That is your interpretation. What the stack trace really says is that Axis2 successfully invokes your service (namely CategorizedHubService#getCategorizedHub), but that there is an issue in your service. A NoSuchMethodError (in contrast to NoSuchMethodException) usually indicates a problem with the build (wrong version of a class packaged into the application) or a class loader problem (multiple versions of the same class in classpaths of different class loaders).
Andreas On Mon, Mar 14, 2011 at 15:14, Bing Li <[email protected]> wrote: > However, it makes my method cannot be invoked! > > Thanks! > LB > > On Mon, Mar 14, 2011 at 10:12 PM, Andreas Veithen > <[email protected]> wrote: >> >> As I said earlier, "Ljava/lang/String;" is simply the name that the >> Java Virtual Machine uses internally for the java.lang.String type. >> There is really nothing magic here. >> >> Andreas >> >> On Mon, Mar 14, 2011 at 15:08, Bing Li <[email protected]> wrote: >> > In Axis2, no WSDD is required. >> > >> > POJO is what I am using. At the server, users just need to write OO >> > program >> > as usual. No particular work is required. I notice that the sample, >> > addressbook, in the directory of POJO accompanied with AXIS binary >> > package, >> > works fine. My case should be the same as that. But the method on the >> > server >> > is not recognized for my method's parameters is changed from String to >> > Ljava/lang/java! >> > >> > What I am wondering why Ljava/lang/java comes out? I never use it. I >> > believe >> > a proper design of Web services development system should NOT bother >> > users >> > with so many underlying techniques. >> > >> > Thanks, >> > LB >> > >> > On Mon, Mar 14, 2011 at 10:02 PM, <[email protected]> wrote: >> >> >> >> Well, I'm not expert at all. The exception is in the server side, >> >> right? >> >> Can you share the wsdd? >> >> >> >> Sent via BlackBerry from T-Mobile >> >> >> >> ________________________________ >> >> From: Bing Li <[email protected]> >> >> Date: Mon, 14 Mar 2011 21:48:14 +0800 >> >> To: JOSE L MARTINEZ-AVIAL<[email protected]> >> >> ReplyTo: [email protected] >> >> Cc: <[email protected]> >> >> Subject: Re: NoSuchMethodError: ... (LJava/lang/String) >> >> 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 >> >> <[email protected]> >> >> wrote: >> >>> >> >>> can you provide the WSDL you are using? >> >>> >> >>> 2011/3/14 Bing Li <[email protected]> >> >>>> >> >>>> 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 <[email protected]> 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 <[email protected]> >> >>>>> 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: [email protected] >> >>>>>> To: [email protected] >> >>>>>> CC: [email protected] >> >>>>>> >> >>>>>> 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 >> >>>>>> <[email protected]> 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 >> >>>>>> <[email protected]> wrote: >> >>>>>> > I think it is trying to invoke a method with a String[] >> >>>>>> > attribute, >> >>>>>> > not >> >>>>>> > simply a String. >> >>>>>> > >> >>>>>> > 2011/3/13 Bing Li <[email protected]> >> >>>>>> >> >> >>>>>> >> 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: [email protected] >> >>>>>> For additional commands, e-mail: [email protected] >> >>>>>> >> >>>>>> >> >>>>> >> >>>> >> >>> >> >> >> > >> > >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [email protected] >> For additional commands, e-mail: [email protected] >> > > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
