Raj,
I don't know if this will help, but try changing the style attribute in your
<service> definition from "document" to "wrapped"
Re: deploying without AdminClient
You're correct: as long as server-config.wsdd is in WEB-INF, you don't need to
run AdminClient. And AdminService is a huge security hole in a production
system, so delete the <service> definition for both AdminService and Version
from your server-config.wsdd.
If you want still want to use deploy.wsdd (e.g., you generated deploy.wsdd with
WSDL2Java --server-side), generate server-config.wsdd with the Admin utility:
java org.apache.axis.utils.Admin -server deploy.wsdd
Hope this helps,
Mike
[EMAIL PROTECTED] wrote:
Thanks Feng! why do I get this error ?
AxisFault
faultCode: {http://xml.apache.org/axis/}Client
faultSubcode:
faultString: No such operation 'inquiryRequest'
I am able to go http://testserver:9080/WSWAR/services/DataInquiry
and it says
*DataInquiry*
Hi there, this is an AXIS service!
/Perhaps there will be a form for invoking the service here.../
This means the webservice is available.. but I don't know why it gives
me No such operation error. I deployed the same one on my PC it works
fine .. but I need to deploy it in the server
*"Feng Xie \(fxie\)" <[EMAIL PROTECTED]>*
09/01/2005 03:21 PM
Please respond to axis-user
To: <[email protected]>
cc:
Subject: RE: Web Sevice Auto Deployment
Raj:
I agree with your understanding about the deployment based my own
experience. Baseline: while the Axis engine is not running, direct
editting of server-config.wsdd will has the same effect of running
ClientAdmin while the Axis engine is running.
Feng
------------------------------------------------------------------------
*From:* [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] *
Sent:* Thursday, September 01, 2005 3:11 PM*
To:* [EMAIL PROTECTED]
Subject:* Web Sevice Auto Deployment
Hello I created a simple Web Application in WSAD and deployed it
successfully in my WebSphere Test Environment that comes with WSAD. I
ran axis AdminClient to deploy the web service and noted that it
created server-config.wsdd under WEB-INF/classes on my workspace
<?xml version="1.0" encoding="UTF-8"?>
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<globalConfiguration>
<parameter name="sendMultiRefs" value="true"/>
<parameter name="disablePrettyXML" value="true"/>
<parameter name="adminPassword" value="admin"/>F
<parameter name="dotNetSoapEncFix" value="true"/>
<parameter name="enableNamespacePrefixOptimization" value="true"/>
<parameter name="sendXMLDeclaration" value="true"/>
<parameter name="attachments.implementation"
value="org.apache.axis.attachments.AttachmentsImpl"/>
<parameter name="sendXsiTypes" value="true"/>
<requestFlow>
<handler type="java:org.apache.axis.handlers.JWSHandler">
<parameter name="scope" value="session"/>
</handler>
<handler type="java:org.apache.axis.handlers.JWSHandler">
<parameter name="scope" value="request"/>
<parameter name="extension" value=".jwr"/>
</handler>
</requestFlow>
</globalConfiguration>
<handler name="LocalResponder"
type="java:org.apache.axis.transport.local.LocalResponder"/>
<handler name="URLMapper"
type="java:org.apache.axis.handlers.http.URLMapper"/>
<handler name="Authenticate"
type="java:org.apache.axis.handlers.SimpleAuthenticationHandler"/>
<service name="DataInquiry" provider="java:RPC" style="document"
use="literal">
<parameter name="wsdlServicePort" value="DataInquiry"/>
<parameter name="schemaQualified" value="java:com.ws.exceptions"/>
<parameter name="className"
value="com.ws.datainquiry.DataInquirySOAPBindingSkeleton"/>
<parameter name="allowedMethods" value="*"/>
<parameter name="typeMappingVersion" value="1.2"/>
<parameter name="wsdlServiceElement" value="DataInquiryService"/>
<parameter name="wsdlTargetNamespace" value="urn:DataInquiry2"/>
<parameter name="wsdlPortType" value="DataInquiry"/>
<parameter name="scope" value="Session"/>
<parameter name="schemaUnqualified" value="urn:DataInquiry2"/>
<typeMapping
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
encodingStyle="" qname="ns1:InvalidDataFormatException"
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
type="java:com.ws.datainquiry.exceptions.InvalidDataFormatException"
xmlns:ns1="java:com.ws.exceptions"/>
<typeMapping
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
encodingStyle="" qname="ns2:inquiryResponse"
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
type="java:com.ws.datainquiry.InquiryResponse"
xmlns:ns2="urn:DataInquiry2"/>
<typeMapping
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
encodingStyle="" qname="ns3:inquiryRequest"
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
type="java:com.ws.datainquiry.InquiryRequest"
xmlns:ns3="urn:DataInquiry2"/>
</service>
<service name="AdminService" provider="java:MSG">
<parameter name="allowedMethods" value="AdminService"/>
<parameter name="enableRemoteAdmin" value="false"/>
<parameter name="className" value="org.apache.axis.utils.Admin"/>
<namespace>http://xml.apache.org/axis/wsdd/</namespace>
<namespace>http://xml.apache.org/axis/wsdd/</namespace>
</service>
<service name="Version" provider="java:RPC">
<parameter name="allowedMethods" value="getVersion"/>
<parameter name="className" value="org.apache.axis.Version"/>
</service>
<transport name="http">
<requestFlow>
<handler type="URLMapper"/>
<handler type="java:org.apache.axis.handlers.http.HTTPAuthHandler"/>
</requestFlow>
<parameter name="qs:list"
value="org.apache.axis.transport.http.QSListHandler"/>
<parameter name="qs:wsdl"
value="org.apache.axis.transport.http.QSWSDLHandler"/>
<parameter name="qs.list"
value="org.apache.axis.transport.http.QSListHandler"/>
<parameter name="qs.method"
value="org.apache.axis.transport.http.QSMethodHandler"/>
<parameter name="qs:method"
value="org.apache.axis.transport.http.QSMethodHandler"/>
<parameter name="qs.wsdl"
value="org.apache.axis.transport.http.QSWSDLHandler"/>
</transport>
<transport name="local">
<responseFlow>
<handler type="LocalResponder"/>
</responseFlow>
</transport>
</deployment>
Then I created a WAR file and deployed it in Websphere Application
Server .. I notice that my DataInquiry Web service is listed as one
of the service . if I go the http://testserver:9080/WSWAR/services.(
Remember I did not *RUN *the admin client to deploy the service on the
application server) when I try to invoke the service I am getting
a RemoteException with an AxisFault shown below
AxisFault
faultCode: {http://xml.apache.org/axis/}Client
faultSubcode:
faultString: No such operation 'inquiryRequest'
My understanding was.. if I have the service defined in the
server-config.wsdd I don't need to run the admin client on the
Application Server inorder to deploy the web service on the application
server.. since it is defined on server-config.wsdd .. axis will auto
deploy the service..( I don't know the mechanism behind admin and
version web servies , how they are auto deployed )
PLEASE correct me if I am wrong ( I hope so)... I wanted to run the
AdminClient but I don't have any user-id and password for the server ..I
have access only to the Web Sphere Admin Console. to deploy EAR or WAR
files
Thanks a lot in advance for your help/
Rja