You should be able to run a service as a specific user because the Scheduler does something similar with the Run As User option. However, you will have to use undocumented API’s and you’ll have to spend some time trying to figure out how to do it. I’m not sure it’s worth it. If you want to go down that route, I suggest you start with the class com.wm.app.b2b.server.InvokeState.
One alternative to this is to write your own packageList service that gets the list of packages without ACL restrictions (e.g. get it directly from the file system).
Another alternative would be to have some other service generate the list of packages every so often (e.g. via a scheduled task) and store it somewhere (e.g. in a static ArrayList). Then, your web service could simply return that list. The advantage is that the scheduled task could run as Administrator and your web service could run under whatever ACL you want. Also, it may speed up the execution of the web service since the list will always be ready to go.
Regarding your last question, you need to set the Content-Type or Accept header to something like text/xml or application/json, and the IS will return the results in that format.
By the way, what are you trying to accomplish? I’m curious.
Percio
#webMethods#Integration-Server-and-ESB