I am trying to use Apache AXIS as a SOAP server embedded in another application, and without having to use a full blown container such as Tomcat. Thus, I'm first trying the SimpleAxisServer. However I need to set the global parameter sendXsiTypes dues to a bug in array serialisation, but I can't find a way to set this part of the configuration with the methods at my disposal. (WSDDDocument is only for Deployments)
The way I start up the stand alone server follows.
Code:
// Setup the export of the Functions class
InputStream wsddFile = new StringBufferInputStream(
"<deployment xmlns=\"http://xml.apache.org/axis/wsdd/\" xmlns:java=\"http://xml.apache.org/axis/wsdd/providers/java\">"+
"<service name=\"ExecutionAgent\" provider=\"java:RPC\">"+
"<parameter name=\"className\" value=\"administration.Functions\"/>"+
"<parameter name=\"allowedMethods\" value=\"*\"/>"+
"</service></deployment>");
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
dbf.setNamespaceAware(true);
DocumentBuilder db = dbf.newDocumentBuilder();
WSDDDocument wsdddoc = new WSDDDocument(db.parse(wsddFile));
SimpleAxisServer server = new SimpleAxisServer();
server.setServerSocket(new ServerSocket(8686));
server.setMyConfig(wsdddoc.getDeployment());
server.start();