[MOBY-dev] Deploy jMoby Service

Karl Spies spies at ipk-gatersleben.de
Thu Jul 20 15:19:17 UTC 2006


Hi,

i solved the problem and yes, first I used moses skeleton generator. But
now I am using a recycled BaseService and implement the rest by myself.

Why I am doing this? The reason is, that oracle is very strict with
there design of web service. You are not allowed to use any abstract
method in your implementation classes. So the

public void processIt (MobyJob request, MobyJob response,MobyPackage
outputContext) throws MobyException {}

will crash the system. An other requirement is that every oracle based
web service must have an interface which extends from java.rmi.Remote
and very method declaration must throw a java.rmi.RemoteException.

The solution was to take inspiration from the BaseService and the moses
generator and implement my own BaseService(change the abtract process
method). After that I copied code from the generated skeleton and put
this into my implementation class. The last thing I had done was to add
some dummy throws.

JOB IS DONE! I know this is painful and neither handy nor stylish. But
it works.

The reason for the StackOverFlowError was the xsd "anyType" data type. I
used the tools from oracle to build an deployable archive from classes
and the generated WSDL use "anyType" to represent the Java data type
"Object". This crashed the oracle AS internal XML parser.

I experimented a little bit with tomcat and oracle. I found that the
used xerxces parser from biomoby don't like this data type too. But the
xerces parser announced an error not a StackOverFlow  :-) .

Now my services are running under both runtimes.


Karl





More information about the MOBY-dev mailing list