axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bing Li <lbl...@gmail.com>
Subject Re: NoSuchMethodError: ... (LJava/lang/String)
Date Mon, 14 Mar 2011 13:48:14 GMT
Dear Jose,

I didn't use WSDL to generate any stud code. What I am currently using is
POJO. I don't understand why AXIS has such a design on Web services?

Thanks,
LB

On Mon, Mar 14, 2011 at 7:35 PM, JOSE L MARTINEZ-AVIAL <jlmagc@gmail.com>wrote:

> can you provide the WSDL you are using?
>
>
> 2011/3/14 Bing Li <lblabs@gmail.com>
>
>> Sorry to send the question again. I forgot putting the example code in the
>> previous email. The code is as follows. It works fine. However, my code does
>> not.
>>
>> public class AddressBookService {
>>
>>     private HashMap entries = new HashMap();
>>     private MyAddress myaddr = new MyAddress();
>>
>>     /**
>>      * Add an Entry to the Address Book
>>      * @param entry
>>      */
>>     public void addEntry(Entry entry) {
>>         this.entries.put(entry.getName(), entry);
>>     }
>>
>>     /**
>>      * Search an address of a person
>>      *
>>      * @param name the name of the person whose address needs to be found
>>      * @return return the address entry of the person.
>>      */
>>     public Entry findEntry(String name) {
>>         return myaddr.getAddr(name);
>>
>>     }
>> }
>>
>>
>> On Mon, Mar 14, 2011 at 2:33 PM, Bing Li <lblabs@gmail.com> wrote:
>>
>>> Dear Martin,
>>>
>>>
>>> I appreciate so much for your help!
>>>
>>> However, I am still confused about the problem. I tried one example as
>>> follows. In this example, a String is sent as a parameter. And then a local
>>> method, getAddr(String keyword), of an object, MyAddress, is invoked. I
>>> noticed that it worked fine.
>>>
>>> My case should be the same as that. What I am wondering why such a type
>>> Ljava/lang/String emerged! I never touched that. Moreover, even though I
>>> changed the String to String[], the problem still exists. Really don't
>>> understand why Web services has such a design.
>>>
>>> I use POJO to implement my Web services. Could you give me a hand?
>>>
>>> Thanks,
>>> LB
>>>
>>>
>>> On Mon, Mar 14, 2011 at 9:49 AM, Martin Gainty <mgainty@hotmail.com>wrote:
>>>
>>>>  it seems that you changed your original input or output message to send
>>>> array of string to single string or vice versa
>>>>
>>>> if you see the operation SelectCategoriedHubByKey make sure your input
>>>> and output messages reference the ArrayOfString typed element here is an
>>>> example
>>>>
>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>> <xsd:schema targetNamespace="http://www.test.org/sample_types"
>>>>             xmlns:tns="http://www.test.org/sample_types"
>>>>             xmlns:soap-enc="http://www.w3.org/2001/09/soap-encoding"
>>>>         xmlns:xsd="http://www.w3.org/2001/XMLSchema">
>>>>   <!--
>>>>     These will cause errors in generation but are necessary for an XML
>>>> schema validator
>>>>     like IBM Schema Quality Checker
>>>>     <xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/"
>>>>                 schemaLocation="
>>>> http://schemas.xmlsoap.org/soap/encoding/"/>
>>>>     <xsd:import namespace="http://www.w3.org/2001/09/soap-encoding"
>>>>                 schemaLocation="http://www.w3.org/2001/09/soap-encoding
>>>> "/>
>>>>   -->
>>>>   <xsd:complexType name="ArrayOfString">
>>>>     <xsd:complexContent>
>>>>       <xsd:restriction base="soap-enc:Array">
>>>>         <xsd:sequence>
>>>>           <xsd:element name="stringElement" type="xsd:string"
>>>> minOccurs="0" maxOccurs="unbounded"/>
>>>>         </xsd:sequence>
>>>>         <xsd:attributeGroup ref="soap-enc:arrayAttributes"/>
>>>>         <xsd:attributeGroup ref="soap-enc:commonAttributes"/>
>>>>       </xsd:restriction>
>>>>     </xsd:complexContent>
>>>>   </xsd:complexType>
>>>>
>>>>   <xsd:element name="strings" type="tns:ArrayOfString" nillable="true"
>>>> minOccurs="1" maxOccurs="1" />
>>>>
>>>>
>>>> <!-- you can reference element name 'strings' for either InputMessage
or
>>>> OutputMessage for your SelectCategoriedHubByKey operation -->
>>>>
>>>> Martin
>>>> ______________________________________________
>>>> Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
>>>>
>>>> Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene
>>>> Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte
>>>> Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht
>>>> dient lediglich dem Austausch von Informationen und entfaltet keine
>>>> rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von
>>>> E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen.
>>>>
>>>> Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas
le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur.
N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert
à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant
donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter
aucune responsabilité pour le contenu fourni.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> ------------------------------
>>>> Date: Mon, 14 Mar 2011 04:16:07 +0800
>>>> Subject: Re: NoSuchMethodError: ... (LJava/lang/String)
>>>> From: lblabs@gmail.com
>>>> To: java-user@axis.apache.org
>>>> CC: andreas.veithen@gmail.com
>>>>
>>>>
>>>> Dear Andreas,
>>>>
>>>> Thanks so much for your reply!
>>>>
>>>> Could you please tell me how to solve the problem?
>>>>
>>>> Thanks,
>>>> LB
>>>>
>>>> On Mon, Mar 14, 2011 at 3:41 AM, Andreas Veithen <
>>>> andreas.veithen@gmail.com> wrote:
>>>>
>>>> No, "Ljava/lang/String;" is the type descriptor used by the JVM to
>>>> represent java.lang.String. The type descriptor for String[] would be
>>>> "[Ljava/lang/String;".
>>>>
>>>> Andreas
>>>>
>>>> On Sun, Mar 13, 2011 at 20:31, JOSE L MARTINEZ-AVIAL <jlmagc@gmail.com>
>>>> wrote:
>>>> > I think it is trying to invoke a method with a String[] attribute, not
>>>> > simply a String.
>>>> >
>>>> > 2011/3/13 Bing Li <lblabs@gmail.com>
>>>> >>
>>>> >> Dear all,
>>>> >>
>>>> >> I am a new Axis2 user. Today I got a weird exception when calling
a
>>>> Web
>>>> >> service.
>>>> >>
>>>> >> This Web service is deployed on Tomcat/Axis2. I need to transmit
an
>>>> object
>>>> >> (parameter) to it. The object contains a String attribute. The object
>>>> is
>>>> >> received correctly. However, when calling a local method on the
>>>> remote
>>>> >> machine, it got the following errors. I noticed that the method
>>>> >> SelectCategoriedHubByKey(Ljava/lang/String key) cannot be found
on
>>>> the
>>>> >> machine. Actually, the method should be
>>>> SelectCategoriedHubByKey(String
>>>> >> key). Why is the parameter changed from String to LJava/lang/String?
>>>> How to
>>>> >> solve the problem?
>>>> >>
>>>> >> Thanks so much!
>>>> >> LB
>>>> >>
>>>> >> [ERROR]
>>>> >>
>>>> com.greatfree.OODB.CategorizedHubDB.SelectCategorizedHubByKey(Ljava/lang/String;)Lcom/greatfree/OODB/CategorizedHub;
>>>> >> java.lang.reflect.InvocationTargetException
>>>> >>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
>>>> Method)
>>>> >>         at
>>>> >>
>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>> >>         at
>>>> >>
>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>> >>         at java.lang.reflect.Method.invoke(Method.java:597)
>>>> >>         at
>>>> >>
>>>> org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:194)
>>>> >>         at
>>>> >>
>>>> org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:102)
>>>> >>         at
>>>> >>
>>>> org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
>>>> >>         at
>>>> >>
>>>> org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:114)
>>>> >>         at
>>>> org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:173)
>>>> >>         at
>>>> >>
>>>> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:173)
>>>> >>         at
>>>> >>
>>>> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:144)
>>>> >>         at
>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
>>>> >>         at
>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
>>>> >>         at
>>>> >>
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:306)
>>>> >>         at
>>>> >>
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>>>> >>         at
>>>> >>
>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
>>>> >>         at
>>>> >>
>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161)
>>>> >>         at
>>>> >>
>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
>>>> >>         at
>>>> >>
>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:108)
>>>> >>         at
>>>> >>
>>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:558)
>>>> >>         at
>>>> >>
>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
>>>> >>         at
>>>> >>
>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:379)
>>>> >>         at
>>>> >>
>>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:243)
>>>> >>         at
>>>> >>
>>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:259)
>>>> >>         at
>>>> >>
>>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:237)
>>>> >>         at
>>>> >>
>>>> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:281)
>>>> >>         at
>>>> >>
>>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>>>> >>         at
>>>> >>
>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>>>> >>         at java.lang.Thread.run(Thread.java:662)
>>>> >> Caused by: java.lang.NoSuchMethodError:
>>>> >>
>>>> com.greatfree.OODB.CategorizedHubDB.SelectCategorizedHubByKey(Ljava/lang/String;)Lcom/greatfree/OODB/CategorizedHub;
>>>> >>         at
>>>> >> com.greatfree.HTTP.CategorizedHubService.getCategorizedHub(Unknown
>>>> Source)
>>>> >>         ... 29 more
>>>> >>
>>>> >
>>>> >
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: java-user-unsubscribe@axis.apache.org
>>>> For additional commands, e-mail: java-user-help@axis.apache.org
>>>>
>>>>
>>>>
>>>
>>
>

Mime
View raw message