File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes Web Services and the fly likes Oracle 10g - JAXB unmarshalling is not working as expected Big Moose Saloon
  Search | Java FAQ | Recent Topics
Register / Login


JavaRanch » Java Forums » Java » Web Services
Reply Bookmark "Oracle 10g - JAXB unmarshalling is not working as expected" Watch "Oracle 10g - JAXB unmarshalling is not working as expected" New topic
Author

Oracle 10g - JAXB unmarshalling is not working as expected

Santhosh Reddy Mandadi
Greenhorn

Joined: Apr 13, 2010
Posts: 11

We're using Oracle 10g application server and deployed the Web service and trying to deploy the web service client. Server is working fine i.e.; marshalling is working fine. We're getting the output from the service properly but the search client is not unmarshalling (parsing) the response received. We're using all the tags under same name space so there is no name space problem. Different collections would exists in the XSD. Has anyone faced similar kind of issue? Is there any solution for this?


Thanks

Santhosh


Thanks

Santhosh
R Srini
Ranch Hand

Joined: Feb 19, 2010
Posts: 215
Hi Santosh.

- Are you able to see the response data in a debugger and does it look right? If you can find the type of the response object in the debugger then you can cast it.
- Also, how are you unmarshalling?
- If you use something like JAXB it should take care of the type conversion for you. Are you using JAXB (or something similar) or your own custom types?
Santhosh Reddy Mandadi
Greenhorn

Joined: Apr 13, 2010
Posts: 11

Hi - I'm using JAXB and I'm getting the response from the web service. I've tested with SOAP UI and XML spy. Response looks good as per the XSD.

In fact client program is working fine in local server on tomcat 6.0. I'm facing this issue only with Oracle app server. i.e.; this is specific issue on Oracle environment.
R Srini
Ranch Hand

Joined: Feb 19, 2010
Posts: 215
Santosh -The last time I came across this problem, it was in OC4J 10.1.3.4, and by default Oracle uses its own XML parser. You may need to configure it to use the XML jars that are used by your application. You could try turning on parent class loading. When deploying the application to OC4J, in Configure Web Module Class Loaders area:

1. uncheck Oracle's XML file,
2. Add Apache's xml-apis.jar and xerxesImpl.jar (or whatever implementation you are using)
3. Check the checkbox for Search Local Classes First

See if that helps.

Thanks.

Srini
Santhosh Reddy Mandadi
Greenhorn

Joined: Apr 13, 2010
Posts: 11

Hi Srini,

Thanks for the reply. We realized today that the client is not running properly on any stand alone server like Tomcat or OC4J.

When we start running the application with tomcat on Netbeans, it is working. But when I take the WAR and deploy it on tomcat, it is not working. Looks like some JARs are not loading properly when we run it on the stand alone servers.

Any idea?


Thanks

Santhosh
R Srini
Ranch Hand

Joined: Feb 19, 2010
Posts: 215
Hi Santosh, Yes, that is precisely the issue that my above post should help you resolve in OC4J. I had the same problem myself some time ago. Please see this for more details on exactly why: http://www.oracle.com/technology/tech/java/oc4j/1013/how_to/how-to-swapxmlparser/doc/readme.html

Just asking it to search your jars first should probably take care of the problem in OC4J. For tomcat, you will have to search for something similar and I am sure you will find it! Identify the jars in netbeans classpath that do not exist in the tomcat lib directory, and put them where they can be found

Or maybe I am not understanding the issue. I don't understand your statement "client not running on any standalone server". Why would the client run on a server? Oh. I guess the client is a web application. Ok. Got it.

Srini
Santhosh Reddy Mandadi
Greenhorn

Joined: Apr 13, 2010
Posts: 11

Hi Srini - I didn't get a chance to look at the option that you've suggested. Since Netbeans IDE 6.8 is using the JRE 1.6, so we've downgraded to netbeans to 5.5 and built the WAR for search client web application. It is now running properly on all the servers.

The problem was - net beans was using JAX-WS 2.2 with JRE 1.6. Though the WAR built was done with JDK 5 (since I had JDK 5 only), it was doing some thing extra....

 
I agree. Here's the link: http://ej-technologies/jprofiler - if it wasn't for jprofiler, we would need to run our stuff on 16 servers instead of 3.
 
subject: Oracle 10g - JAXB unmarshalling is not working as expected
 
Similar Threads
connect to oracle without hardcoding IP address
Exception "IllegalArgumentException: Resource not found"
Connecting to WebSphere name service from JDeveloper
remove all user Sessions
JAX-WS web service client - unmarshalling is not working on stand alone server (Tomcat or OC4J)