Avatar billede fredand Forsker
08. maj 2008 - 22:47 Der er 4 kommentarer og
1 løsning

How come do I get this?

Hello!

I'm struggling to get a webservice to use a ejb-client that calls an ejb deployed on an other server. I call my webservice from an standalone java app like:

      public void getNamesWS() throws Exception
      {
          try
          {
            NameswebserviceStub nameswebserviceStub = new NameswebserviceStub();//EXCPTION ON THIS ROW
            NameswebserviceStub.GetNamesWSEJBResponse getNamesWSEJBResponse = nameswebserviceStub.getNamesWSEJB();
   
            String nameString = getNamesWSEJBResponse.get_return();
   
            textAreaWS.setText(nameString);
   
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
       
    }


But along this struggle I run into this (row marked above row 233):

java.lang.NoSuchMethodError: javax.xml.namespace.QName.<init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    at com.ctc.wstx.sr.NsInputElementStack.getCurrentElementName(NsInputElementStack.java:651)
    at com.ctc.wstx.sr.BasicStreamReader.getName(BasicStreamReader.java:723)
    at org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:160)
    at org.apache.axiom.om.impl.llom.OMDocumentImpl.getOMDocumentElement(OMDocumentImpl.java:130)
    at org.apache.axiom.om.impl.builder.StAXOMBuilder.getDocumentElement(StAXOMBuilder.java:359)
    at org.apache.axis2.util.XMLUtils.toOM(XMLUtils.java:568)
    at org.apache.axis2.deployment.DescriptionBuilder.buildOM(DescriptionBuilder.java:96)
    at org.apache.axis2.deployment.AxisConfigBuilder.populateConfig(AxisConfigBuilder.java:79)
    at org.apache.axis2.deployment.DeploymentEngine.populateAxisConfiguration(DeploymentEngine.java:615)
    at org.apache.axis2.deployment.FileSystemConfigurator.getAxisConfiguration(FileSystemConfigurator.java:115)
    at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:64)
    at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContextFromFileSystem(ConfigurationContextFactory.java:180)
    at org.apache.axis2.client.ServiceClient.configureServiceClient(ServiceClient.java:146)
    at org.apache.axis2.client.ServiceClient.<init>(ServiceClient.java:139)
    at nameswebservices.client.NameswebserviceStub.<init>(NameswebserviceStub.java:42)
    at nameswebservices.client.NameswebserviceStub.<init>(NameswebserviceStub.java:28)
    at nameswebservices.client.NameswebserviceStub.<init>(NameswebserviceStub.java:80)
    at nameswebservices.client.NameswebserviceStub.<init>(NameswebserviceStub.java:72)
    at namesjavaapplication.NamesJavaApplication.getNamesWS(NamesJavaApplication.java:233)
    at namesjavaapplication.NamesJavaApplication.actionPerformed(NamesJavaApplication.java:108)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1786)
    at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1839)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:245)
    at java.awt.Component.processMouseEvent(Component.java:5100)
    at java.awt.Component.processEvent(Component.java:4897)
    at java.awt.Container.processEvent(Container.java:1569)
    at java.awt.Component.dispatchEventImpl(Component.java:3615)
    at java.awt.Container.dispatchEventImpl(Container.java:1627)
    at java.awt.Component.dispatchEvent(Component.java:3477)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3483)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3198)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3128)
    at java.awt.Container.dispatchEventImpl(Container.java:1613)
    at java.awt.Window.dispatchEventImpl(Window.java:1606)
    at java.awt.Component.dispatchEvent(Component.java:3477)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:480)
    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)

I get this error from the stand alone java app run from within eclipse. When I have searched the Internet I have found that this error might occur on the server side if the webservice is deployed insdei a *.aar like I do have. But this is on the client side!!!
So if any one got any idea please let me know!
Best regards
Fredrik
Avatar billede arne_v Ekspert
09. maj 2008 - 01:10 #1
Fejlen betyder at com.ctc.wstx.sr.NsInputElementStack er oversat mod en anden
javax.xml.namespace.QName end den der køres mod.

Så du skal igang med at jage forskellige versioner XML libraries.
Avatar billede arne_v Ekspert
09. maj 2008 - 01:11 #2
The error means that com.ctc.wstx.sr.NsInputElementStack is compiled against another
javax.xml.namespace.QName than the one used at runtime.

So you need to start looking for different versions of XML libraries.
Avatar billede arne_v Ekspert
29. august 2008 - 02:27 #3
?
Avatar billede fredand Forsker
24. oktober 2008 - 23:23 #4
Please give a svar arne!
The solution was to tell my wls to prefer libs in  the deployed app.
Thanks alot!
Avatar billede arne_v Ekspert
24. oktober 2008 - 23:46 #5
ok
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester