Technically, a picnic ham isn't ham; it's pork. Ham is defined as a cut of meat taken from the top of the hind legs of a pig. A picnic ham, on the other hand, is a cut of pork taken from the pig's front legs, and it includes part of the shoulder. While a true ham may be on or off the bone, a picnic ham is traditionally on the bone. Picnic hams do taste a bit more like ham than other pork cuts because they're smoked. Roasting a picnic ham at home is simple, but it does take a few hours.
Bring a picnic ham to room temperature before roasting it by leaving it out of the refrigerator for approximately one hour. Set the oven to 325 degrees Fahrenheit and let it fully preheat during the latter part of this time.
Brush the entire surface of the picnic ham with a light coating of olive oil. Prepare and apply any rub or mix of dry seasonings called for in the recipe you're following. Use salt minimally, or not at all, as a picnic ham is a naturally salty cut of meat. Wait to glaze a picnic ham until the last hour of roasting.
Fit the rack into your roasting pan. Fill the bottom of the pan with about 1 inch of cold water. Place the picnic ham on the rack.
Insert an oven-safe meat thermometer into the center of the picnic ham. Get the tip close to the bone, but make sure it doesn't actually make contact with it, as this will throw off the reading.
Put the picnic ham into the middle of the oven. Roast it for 18 to 22 minutes per lb. Cooking times are approximations, as they vary by oven and according to the size of the roast. Picnic hams and other meat on the bone cook a bit faster than boneless meat. Use cooking time only as a guide, and an internal temperature reading of 160 degrees Fahrenheit as a reliable indication that the picnic ham is finished roasting.
Take the ham out of the oven and transfer it to a serving tray. Cover it loosely with aluminum foil and let it rest for 20 minutes before cutting it.