I am having trouble running the message-based CatalogPublisherService
example from page 54 in Chapter 2 of the Wrox Press book, "Axis: The Next
Generation of Java SOAP."

To run this service, I compiled the service and moved its class file into
the proper directory. I then deployed the service successfully, and the WSDL
looks OK. At this point, I compiled and ran the client, only to receive the
following NoSuchMethodException:

C:\wrox-axis>java wroxaxis.chapter2.messaging.CatalogPublisherServiceClient
Exception in thread "main" java.lang.NoSuchMethodException:
publishCatalogtried
class:  wroxaxis.chapter2.messaging.CatalogPublisherService, method name:
publishCatalog.
        at
org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:13
4)
        at
org.apache.axis.encoding.DeserializationContextImpl.endElement(Deserializati
onContextImpl.java:875)
        at
org.apache.xerces.parsers.SAXParser.endElement(SAXParser.java:1403)
        at
org.apache.xerces.validators.common.XMLValidator.callEndElement(XMLValidator
.java:1550)
        at
org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XM
LDocumentScanner.java:1204)
        at
org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.
java:381)
        at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1098)
        at javax.xml.parsers.SAXParser.parse(SAXParser.java:345)
        at
org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationCon
textImpl.java:202)
        at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:428)
        at org.apache.axis.client.Call.invoke(Call.java:1919)
        at org.apache.axis.client.Call.invoke(Call.java:1155)
        at
wroxaxis.chapter2.messaging.CatalogPublisherServiceClient.main(CatalogPublis
herServiceClient.java:30)

CatalogPublisherService has a publishCatalog method, and there is only one
CatalogPublisherService.class file in Tomcat's directory structure, so I
don't think I'm picking up the wrong one. And the method name seems to be
spelled correctly in my WSDD and WSDL.

Does anybody have any thoughts on how I can resolve this problem?


Thanks,
Richard Pfeiffer

Reply via email to