Jeff
   
  Thanks for reply.appreciate it.
   
  This is how I have done my thing. I am new to WS so starting from WSDL seems 
tough.
   
  1) I have a Java class which has a method getName(String idstring)
  2) I run ANT JAVA2WSDL with STYLE = wrapped option.
  3) This creates the WSDL file.
  4) Then I run WSDL2JAVA on wsdl file to create client java stubs. It also 
creates the deploy.wsdd and undeploy.wsdd files.
  5) The deploy.wsdd file is then fed to 
  org.apache.axis.utils.Admin to create the server-deploy.wsdd file.
  6) I place the server-deploy.wsdd file under /WEB-INF/ directory. This wsdd 
file has wrapped/literal declarations.
  7) Start JBOSS . I have a servlet which uses the client stubs created in step 
4 to call webservice and it runs fine.
  8) But when I create WSDL using the link in my previous email I see RPC / 
SOAP encoding.
   
  So my question is how do I know the JBOSS server read server-deploy.wsdd and 
deployed the WS correctly. I have the .jws file outside the /WEB-INF/ directory.
   
  Thanks
  MN
   
  

"Walker, Jeff" <[EMAIL PROTECTED]> wrote:
      Ok,
  so I don't think that's right. Did you mean style="wrapped" ? Also, you can't 
tell the browser to format it as wrapped. The browser has no idea what 
'wrapped' or 'document' or 'RPC encoded' means. Its just plain xml to a 
browser. Not sure what JBOSS allows, but I'm pretty sure it has no idea what 
wrapped/document/rpc endocded is either.
   
  Whatever the wsdl format is that they see, is what you have created. If they 
see rpc encoded, then your web service follows that style. (In other words, I 
don't think you are using document or wrapped yet). These are the basic 
characteristics of the document/literal wrapped pattern:
        
   The input message has a single part. (One object passed in).   
   The part is an element in the schema.   
   The element has the same name as the operation. (Wierd Microsoft preferred 
convention here. The input object has the same name as the operation itself. 
Very strange. Try writing a project in a computer science course in college and 
do that, name a parameter the same name as the operation that takes it and see 
what mark you get! Fortunately, wsdl is flexible and this can easily be done).  
 
   The element's complex type has no attributes. (Another Microsoft convention; 
to simplify class construction, I'm guessing).
  Here are the strengths and weaknesses of this approach:
  Strengths
    
   There is no type encoding info. (Finally, something useful from this wrapped 
idea).   
   Everything that appears in the soap:body is defined by the schema, so you 
can easily validate this message. (Great idea!)   
   Once again, you have the method name in the SOAP message. (Good for routing 
requests I suppose, but one wonders what web services will look like 5 years 
from now if we no longer use OO and we don't have methods in classes anymore?)  
 
   Document/literal is WS-I compliant, and the wrapped pattern meets the WS-I 
restriction that the SOAP message's soap:body has only one child. 
  Weaknesses
    
   The WSDL is more complicated. (Only slightly, really. And considering we can 
easily develop .NET clients from the wsdl now, it's worth it).


   
  I recommend you use style="document". The wrapped part is just the way you 
organize message parts in your wsdl to follow a convention originally defined 
by Microsoft and later ratified by the WSI for interoperability. So, to play 
with Microsoft nicely, we bend a little and adopt their wrapped style.
   
  One more thing, I don't start with a Java interface and run it through 
Java2WSDL. I usually use WSDL2Java, that is, I start with WSDL first 
(contract-first approach) and then generate the Java from that. (Afterall, if 
your'e a client trying to communicate to a web service, you get the wsdl given 
to you and that's usually about all you get. So, why not get the wsdl down-pat 
first?)
  -jeff
  
 
      
---------------------------------
  From: M N [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, October 16, 2007 4:29 PM
To: axix axis
Subject: How to tell JBOSS/AXIS to create WSDL on the fly with 
style=WRAPPING/LITERAL?


  
  I have installed java webservice on JBOSS using AXIS 1.4. I created the WSDL 
using ANT-java2wsdl tool. Using this tool I can specify the STYLE="WRAPPING". 
This works fine.
  But when the user creates the WSDL on the fly by pointing to browser 
http://100.11.8.330:8080/okayapp/CustAccountService.jws?wsdl he gets a WSDL in 
browser which is RPC encoded. How can I tell browser or JBOSS to provide 
style=WRAPPING/LITERAL wsdl on the fly?
    
---------------------------------
  Don't let your dream ride pass you by. Make it a reality with Yahoo! Autos. 


       
---------------------------------
Shape Yahoo! in your own image.  Join our Network Research Panel today!

Reply via email to