Hello Sven,

i have the same problem. Have you an idea how to convert an omelement to an array?

cheers
ahmet

Hi all,

on the *client* side, the following exception is thrown:

Exception in thread "main" _java.lang.NullPointerException_

at herbieclient.test.holeBenutzer(_test.java:73_)

at herbieclient.test.main(_test.java:28_)

Line 73: System.out.println(buddies1.getName());

On the server side no exception is thrown.

Now, in order to understand the problem I have added the following code in the server class right after the server code described in my first mail:

//Setting the OMElement in the UserDesktopBean

bean.setBuddies(omElementBUD);

*new:*

HerbieObjectDesktopBean[] budtest = (HerbieObjectDesktopBean[]) BeanUtil.deserialize(omElementBUD, new Object[]{HerbieObjectDesktopBean.class},new AxisService().getObjectSupplier());

System.out.println(budtest.length);

Now, the following exception is thrown on the *server* side:

java.lang.ClassCastException: org.apache.axiom.om.impl.llom.OMDocumentImpl at org.apache.axis2.databinding.utils.BeanUtil.deserialize(BeanUtil.java:423)

at herbie.core.desktop.handler.UserHandler.get(UserHandler.java:255)

at herbie.core.desktop.handler.HerbieWSSkeleton.UserGet(HerbieWSSkeleton.java:86)

at herbie.core.desktop.handler.HerbieWSMessageReceiverInOut.invokeBusinessLogic(HerbieWSMessageReceiverInOut.java:74)

at org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.receive(AbstractInOutSyncMessageReceiver.java:39)

at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:493)

at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:319)

at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:247)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)

at herbie.core.gui.filter.CharsetFilter.doFilter(CharsetFilter.java:27)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)

at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)

at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)

at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)

at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)

at java.lang.Thread.run(Thread.java:595)

Regards,

Sven

------------------------------------------------------------------------

*Von:* Yadav, Yogendra (IT) [mailto:[EMAIL PROTECTED]
*Gesendet:* Dienstag, 9. Januar 2007 18:16
*An:* [email protected]
*Betreff:* RE: [Axis2] Converting an OMElement into an Array of Objects

what is the exception ?

------------------------------------------------------------------------

*From:* Sven Schroebler [mailto:[EMAIL PROTECTED]
*Sent:* Tuesday, January 09, 2007 12:04 PM
*To:* [email protected]
*Subject:* [Axis2] Converting an OMElement into an Array of Objects

Hi All,

I am quite new to Axis2 and I am trying to develop a webservice for an existing webapplication.

So far I managed to set up a basic webservice that transfers JavaBeans (e.g. “UserDesktopBean”) and it possible to access all of the simple data types from the client application. Unfortunately, even after reading multiple AXIOM tutorials, I don’t know how to correctly work with the JavaBeans nested inside the “UserDesktopBeans” that need to be transferred as via AXIOM OMElement-wrapping.

At this time I use the following code to return an array of Objects as an OMElement:

SERVER:

###########

//Converting an ArrayList to Array

Object[] budlist = buddies.toArray();

QName budQName = new QName("http://desktop.core.herbie.buddies","buddies";);

OMElement omElementBUD = BeanUtil.getOMElement(budQName, budlist, null, false, null);

//Setting the OMElement in the UserDesktopBean

bean.setBuddies(omElementBUD);

CLIENT:

############

//here I am trying to transform the array back

OMElement _buddies = benutzer.getBuddies();

ObjectSupplier os = new AxisService().getObjectSupplier();

Object[] budlist=new Object[]{HerbieWSStub.HerbieObjectDesktopBean.class};

Object[] buddies = BeanUtil.deserialize(_buddies,budlist,os);

//here I am trying to access the first array element

HerbieWSStub.HerbieObjectDesktopBean buddies1 = (HerbieWSStub.HerbieObjectDesktopBean) buddies[0];

System.out.println(buddies1.getName());

Trying to access the array leads to an Exception at this time.

I would really appreciate, if you could help me with this problem.

For a better understanding of the underlying webservice, I’ve attached the UserDesktopBean, the WSDL-File and the services.xml

Best Regards,
Sven

------------------------------------------------------------------------

NOTICE: If received in error, please destroy and notify sender. Sender does not intend to waive confidentiality or privilege. Use of this email is prohibited when received in error.



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to