Bring a large pot of water to a boil. Put the cabbage, carrots, and celery into the boiling water and cook for about 2 minutes. Transfer the veggies to an ice bath and drain. Thoroughly squeeze out all the excess water from the vegetables (you can put the drained veggies in a clean kitchen towel and squeeze out the water). This is a very important step because if the filling is too wet, you will have a wet filling and soggy egg rolls!
Once dry, transfer the veggies to a large mixing bowl. Add the scallions, salt, sugar, sesame oil, 2 tablespoons oil, five spice powder (if using), white pepper, roast pork, and cooked shrimp (if using). Toss everything together. The filling is ready to be wrapped!
The way to wrap these egg rolls is to first take a small fistful of filling, squeeze it a little in your hand until it is compressed together, and place it on the wrapper. Check out the photos below to see how to wrap them. Basically, it's similar to the method you'd use to wrap a burrito. Just add a thin layer of egg to make sure it stays sealed. Line them up on a lightly floured surface, and continue assembling until you run out of ingredients.
In a small pot, heat oil to 325 degrees. You don't need too much--just enough to submerge the egg rolls. Carefully place a couple egg rolls into the oil, and fry them for about 5 minutes until golden brown. Keep them moving in the oil to make sure they fry evenly.
My father used to tell me that frying egg rolls was a fool-proof task. You just slide them gently into the oil, and keep them moving while they are frying. When they're done, they'll "call" you with a slightly louder sizzling noise. That splattering noise is signaling that the filling is getting hot inside. The steam is escaping, causing the oil to bubble up.
You can serve them after they've cooled a bit. Freeze leftovers in freezer bags and reheat them in the oven.