You are viewing a plain text version of this content. The canonical link for it is here.
Posted to general-cvs@xml.apache.org by je...@apache.org on 2001/11/20 23:33:31 UTC

cvs commit: xml-site/targets/soap/faq faq_chawke.html

jechawke    01/11/20 14:33:31

  Modified:    targets/soap/faq faq_chawke.html
  Log:
  Added some new faq entries, made some minor corrections.
  
  Revision  Changes    Path
  1.9       +57 -24    xml-site/targets/soap/faq/faq_chawke.html
  
  Index: faq_chawke.html
  ===================================================================
  RCS file: /home/cvs/xml-site/targets/soap/faq/faq_chawke.html,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- faq_chawke.html	2001/09/24 12:43:25	1.8
  +++ faq_chawke.html	2001/11/20 22:33:31	1.9
  @@ -11,7 +11,7 @@
   </HEAD>
   <BODY LINK="#0000ff" VLINK="#800080">
   <H1>Apache-SOAP User's FAQ</H1>
  -This FAQ is based on the questions and answers that appear on the <a href="http://xml.apache.org/soap/mail.html">Apache-SOAP User's Mailing List</a>.<br> It is currently maintained by <A HREF="mailto:j_chawke@hotmail.com">Jonathan Chawke</A>, and was last modified on Mon 24-Sep-2001 01:40PM GMT.
  +This FAQ is based on the questions and answers that appear on the <a href="http://xml.apache.org/soap/mail.html">Apache-SOAP User's Mailing List</a>.<br> It is currently maintained by <A HREF="mailto:j_chawke@hotmail.com">Jonathan Chawke</A>, and was last modified on Tue 20-Nov-2001 10:38PM GMT.
   <br>Corrections and suggestions for new questions are always welcome.
   <H1><A NAME="toc">Table of Contents</A></H1><OL><LI><H2>Hot Topics</H2>1.1&nbsp;&nbsp;<A HREF="#Q1_1">Help! I'm getting this error: "Element must contain a:'faultcode' element"</A><br>
   1.2&nbsp;&nbsp;<A HREF="#Q1_2">Help! I'm getting this error: "Unable to resolve namespace URI for 'xsd'".</A><br>
  @@ -23,6 +23,7 @@
   at org.apache.soap.util.xml.QName.<init>(QName.java:80)"</A><br>
   1.7&nbsp;&nbsp;<A HREF="#Q1_7">Help! I'm getting this error: "Exception in thread "main" java.lang.AbstractMethodError at org.apache.soap.util.xml.QName.<init>(QName.java:80)"</A><br>
   1.8&nbsp;&nbsp;<A HREF="#Q1_8">I think I have an XML parser library problem. How can I determine exactly which library is being used by Apache SOAP?</A><br>
  +1.9&nbsp;&nbsp;<A HREF="#Q1_9">How can I view the 'raw' XML data that is exchanged between a SOAP client and server?</A><br>
   <br></LI><LI><H2>General</H2>2.1&nbsp;&nbsp;<A HREF="#Q2_1">Where can I get help on SOAP issue XYZ?</A><br>
   2.2&nbsp;&nbsp;<A HREF="#Q2_2">Where can I find mailing list archives for the soap-user mailing list?</A><br>
   2.3&nbsp;&nbsp;<A HREF="#Q2_3">I'm just getting started with SOAP. Where can I find a tutorial on SOAP programming?</A><br>
  @@ -50,6 +51,11 @@
   2.32&nbsp;&nbsp;<A HREF="#Q2_32">Where can I find a list of public SOAP services that are available on the Internet?</A><br>
   2.34&nbsp;&nbsp;<A HREF="#Q2_34">What tools are available that use Apache SOAP?</A><br>
   2.36&nbsp;&nbsp;<A HREF="#Q2_36">How do I restrict access to the Apache SOAP administration client?</A><br>
  +2.38&nbsp;&nbsp;<A HREF="#Q2_38">How can I get the IP address of a client that is using my SOAP Service?</A><br>
  +2.40&nbsp;&nbsp;<A HREF="#Q2_40">Can a client programmatically deploy a SOAP service?</A><br>
  +2.41&nbsp;&nbsp;<A HREF="#Q2_41">I'd like to deploy multiple services using a single deployment descriptor file. Is this possible?</A><br>
  +2.42&nbsp;&nbsp;<A HREF="#Q2_42">Will Apache SOAP support JAXM when it's ready?</A><br>
  +2.43&nbsp;&nbsp;<A HREF="#Q2_43">Will Apache SOAP support JAX-RPC?</A><br>
   <br></LI><LI><H2>Installation</H2>3.1&nbsp;&nbsp;<A HREF="#Q3_1">What jar files do I need to provide for Apache-SOAP clients?</A><br>
   3.2&nbsp;&nbsp;<A HREF="#Q3_2">How do I install Apache-SOAP on Tomcat?</A><br>
   3.3&nbsp;&nbsp;<A HREF="#Q3_3">Can I install Apache-SOAP 2.1 on Tomcat 4.0 (beta)?</A><br>
  @@ -61,7 +67,8 @@
   3.9&nbsp;&nbsp;<A HREF="#Q3_9">How do I install Apache-SOAP on Bluestone?</A><br>
   3.10&nbsp;&nbsp;<A HREF="#Q3_10">How do I install Apache-SOAP on Orion?</A><br>
   3.11&nbsp;&nbsp;<A HREF="#Q3_11">How do I install Apache-SOAP on Apache-JServ?</A><br>
  -3.12&nbsp;&nbsp;<A HREF="#Q3_12">How do I install Apache-SOAP on iPlanet?</A><br>
  +3.12&nbsp;&nbsp;<A HREF="#Q3_12">How do I install Apache-SOAP on iPlanet Web Server?</A><br>
  +3.13&nbsp;&nbsp;<A HREF="#Q3_13">How do I install Apache-SOAP on iPlanet Application Server?</A><br>
   3.14&nbsp;&nbsp;<A HREF="#Q3_14">How do I install Apache-SOAP on Unify's ServletExec?</A><br>
   3.17&nbsp;&nbsp;<A HREF="#Q3_17">How do I install Apache-SOAP on Borland Application Server (BAS) 4.5?</A><br>
   <br></LI><LI><H2>Troubleshooting</H2>4.2&nbsp;&nbsp;<A HREF="#Q4_2">Help! Visual Age can't compile SOAP - it says I'm missing package com.ibm.xmi.job.*</A><br>
  @@ -80,6 +87,7 @@
   4.18&nbsp;&nbsp;<A HREF="#Q4_18">Help! I'm getting this error when I run one of the MIME samples: "Error parsing response:
   javax.mail.MessagingException: Missing start boundary"</A><br>
   4.19&nbsp;&nbsp;<A HREF="#Q4_19">Help! I'm getting this error: "java.lang.NoClassDefFoundError: javax/xml/transform/TransformerException"</A><br>
  +4.20&nbsp;&nbsp;<A HREF="#Q4_20">I'm getting a segmentation fault when I try to run SOAP on Red Hat. What's wrong?</A><br>
   <br></LI><LI><H2>Design and Architecture Issues</H2>5.2&nbsp;&nbsp;<A HREF="#Q5_2">Can a SOAP server maintain session between multiple client invocations?</A><br>
   5.3&nbsp;&nbsp;<A HREF="#Q5_3">What is an actor?</A><br>
   5.4&nbsp;&nbsp;<A HREF="#Q5_4">Can Apache-SOAP handle large (multiple megabyte) files?</A><br>
  @@ -105,18 +113,21 @@
   <br></LI><LI><H2>WSDL</H2>8.1&nbsp;&nbsp;<A HREF="#Q8_1">Where can I find the WSDL specification document?</A><br>
   8.2&nbsp;&nbsp;<A HREF="#Q8_2">Does Apache SOAP use WSDL?</A><br>
   8.3&nbsp;&nbsp;<A HREF="#Q8_3">How can I generate a WSDL file for my SOAP service?</A><br>
  -8.4&nbsp;&nbsp;<A HREF="#Q8_4">Is there a tool that can validate WSDL?</A><br>
  -8.5&nbsp;&nbsp;<A HREF="#Q8_5">Is there a command-line utility that I can use to generate a WSDL File?</A><br>
  -8.6&nbsp;&nbsp;<A HREF="#Q8_6">Is there a command-line utility that I can use to generate WSDL stub and skeleton files?</A><br>
  -8.7&nbsp;&nbsp;<A HREF="#Q8_7">Any one know is there any open source UDDI  server implementation?  (the UDDI4J server is locked into DB2)</A><br>
  -8.8&nbsp;&nbsp;<A HREF="#Q8_8">Is there a tool that can be used to parse WSDL files?</A><br>
  -8.9&nbsp;&nbsp;<A HREF="#Q8_9">Where should I place my WSDL files?</A><br>
  -8.10&nbsp;&nbsp;<A HREF="#Q8_10">Where can I find out about how WSDL and UDDI work together?</A><br>
  -8.11&nbsp;&nbsp;<A HREF="#Q8_11">Where can I find out more about UDDI?</A><br>
  +8.4&nbsp;&nbsp;<A HREF="#Q8_4">How can I generate Java code from an existing WSDL file?</A><br>
  +8.5&nbsp;&nbsp;<A HREF="#Q8_5">Is there a command-line utility that I can use to generate WSDL stub and skeleton files?</A><br>
  +8.6&nbsp;&nbsp;<A HREF="#Q8_6">Is there a tool that can validate WSDL?</A><br>
  +8.7&nbsp;&nbsp;<A HREF="#Q8_7">Is there a command-line utility that I can use to generate a WSDL File?</A><br>
  +8.8&nbsp;&nbsp;<A HREF="#Q8_8">Any one know is there any open source UDDI  server implementation?  (the UDDI4J server is locked into DB2)</A><br>
  +8.9&nbsp;&nbsp;<A HREF="#Q8_9">Is there a tool that can be used to parse WSDL files?</A><br>
  +8.10&nbsp;&nbsp;<A HREF="#Q8_10">Where should I place my WSDL files?</A><br>
  +8.11&nbsp;&nbsp;<A HREF="#Q8_11">Where can I find out about how WSDL and UDDI work together?</A><br>
  +8.12&nbsp;&nbsp;<A HREF="#Q8_12">Where can I find out more about UDDI?</A><br>
  +8.13&nbsp;&nbsp;<A HREF="#Q8_13">The WSTK proxygen tool generates a class that requires a URL parameter in the constructor. What should I use?</A><br>
   <br></LI><LI><H2>SOAP and .NET</H2>9.1&nbsp;&nbsp;<A HREF="#Q9_1">Does Apache SOAP work with Microsoft SOAP?</A><br>
   9.4&nbsp;&nbsp;<A HREF="#Q9_4">Help! My Apache SOAP Client cannot connect to a .NET service - the server says it expects 'text/xml' and doesn't understand "text/xml; charset=utf-8".</A><br>
   9.5&nbsp;&nbsp;<A HREF="#Q9_5">Where can I find information about interoperating between an MS SOAP client and an Apache SOAP service?</A><br>
   9.7&nbsp;&nbsp;<A HREF="#Q9_7">Where can I find an example of how to use the low-level MS SOAP API?</A><br>
  +9.8&nbsp;&nbsp;<A HREF="#Q9_8">How do I maintain sessions between Apache-SOAP and MS SOAP?</A><br>
   </OL>
   
   <HR NOSHADE><H2>Questions and Answers</H2>
  @@ -140,7 +151,9 @@
   1.7&nbsp;&nbsp;<STRONG><A NAME="Q1_7">Help! I'm getting this error: "Exception in thread "main" java.lang.AbstractMethodError at org.apache.soap.util.xml.QName.<init>(QName.java:80)"</A></STRONG><BR>
   See Question 1.6 above.<p>
   1.8&nbsp;&nbsp;<STRONG><A NAME="Q1_8">I think I have an XML parser library problem. How can I determine exactly which library is being used by Apache SOAP?</A></STRONG><BR>
  -Matt Duftler has kindly provided a JSP page can tell you whether a JAXP-compliant parser is being found, what package the implementing classes of the org.w3c.dom interfaces are from, and whether the org.w3c.dom interfaces being resolved are namespace-aware. The JSP file is available here: <A HREF="http://marc.theaimsgroup.com/?l=soap-user&m=99669938017194&w=2">http://marc.theaimsgroup.com/?l=soap-user&m=99669938017194&w=2</a>.<p>
  +Matt Duftler has kindly provided a JSP page can tell you whether a JAXP-compliant parser is being found, what package the implementing classes of the org.w3c.dom interfaces are from, and whether the org.w3c.dom interfaces being resolved are namespace-aware. The JSP file is available here: <A HREF="http://marc.theaimsgroup.com/?l=soap-user&m=99669938017194&w=2">http://marc.theaimsgroup.com/?l=soap-user&m=99669938017194&w=2</a>. Note that SOAP 2.2 (or newer) is required.<p>
  +1.9&nbsp;&nbsp;<STRONG><A NAME="Q1_9">How can I view the 'raw' XML data that is exchanged between a SOAP client and server?</A></STRONG><BR>
  +There are a couple of tools which you can use to do this:<BR>(1) TcpTunnel (textual interface) / TcpTunnelGui (graphical interface), which are both provided with the standard Apache SOAP distribution. See <A HREF="http://xml.apache.org/soap/faq/faq_chawke.html#Q2_10">http://xml.apache.org/soap/faq/faq_chawke.html#Q2_10</a> for more information on how to use these tools. <BR>(2) UtilSnoop, described as its author as 'somewhat more user friendly' than TcpTunnelGui. It's available at <A HREF="http://www.lanw.com/books/javasoap/">http://www.lanw.com/books/javasoap/</a>.<p>
   
   
   <p><H2><u>2.&nbsp;&nbsp;General</u></H2>
  @@ -171,7 +184,7 @@
   2.13&nbsp;&nbsp;<STRONG><A NAME="Q2_13">What products are available that will let me use ASP or Perl as SOAP client?</A></STRONG><BR>
   See <A HREF="http://www.soap-wrc.com/webservices/default.asp">http://www.soap-wrc.com/webservices/default.asp</a> and also <A HREF="http://www.soaprpc.com/software">http://www.soaprpc.com/software</a> for lists of SOAP libs/packages. A popular Perl implementation is SOAP::Lite - available at <A HREF="http://www.soaplite.com/">http://www.soaplite.com/</a>.<p>
   2.14&nbsp;&nbsp;<STRONG><A NAME="Q2_14">I'd like to write a SOAP client as a Java applet. Are there any 'tiny' SOAP client libraries I could use?</A></STRONG><BR>
  -Consider using SoapRMI for your client. It is 183KB (including full XML parser) and is available here: <A HREF="http://www.extreme.indiana.edu/soap/rmi/download/">http://www.extreme.indiana.edu/soap/rmi/download/</a>. For more details about its design, see: <A HREF="http://www.extreme.indiana.edu/soap/">http://www.extreme.indiana.edu/soap/</a>. <BR>You could also consider using IBM's 'Web Services Development Environment' <A HREF="http://www.alphaworks.ibm.com/tech/wsde">http://www.alphaworks.ibm.com/tech/wsde</a> (warning: it is a big download). Among other things, it will automatically generate WSDL files from any java class or COM object, create a browser-based client, and deploy your services to Websphere or Apache.<BR>Also have a look at KSoap - a small-footprint SOAP lib for J2ME: <A HREF="http://ksoap.enhydra.org/index.html">http://ksoap.enhydra.org/index.html</a>.<p>
  +Consider using SoapRMI for your client. It is 183KB (including full XML parser) and is available here: <A HREF="http://www.extreme.indiana.edu/soap/rmi/download/">http://www.extreme.indiana.edu/soap/rmi/download/</a>. For more details about its design, see: <A HREF="http://www.extreme.indiana.edu/soap/">http://www.extreme.indiana.edu/soap/</a>. <BR>You could also consider using IBM's 'Web Services Development Environment' <A HREF="http://www.alphaworks.ibm.com/tech/wsde">http://www.alphaworks.ibm.com/tech/wsde</a> (warning: it is a big download). Among other things, it will automatically generate WSDL files from any java class or COM object, create a browser-based client, and deploy your services to Websphere or Apache.<BR>Also have a look at KSoap - a small-footprint SOAP lib for J2ME: <A HREF="http://ksoap.enhydra.org/index.html">http://ksoap.enhydra.org/index.html</a>. <BR>Systinet (formerly Idoox) also provide a JavaScript-based SOAP implementation that enables you to invoke a SOAP request from a browser. The JavaScript support is included in WASP Lite. You can download it from <A HREF="http://www.systinet.com/download.html">http://www.systinet.com/download.html</a>.<p>
   2.15&nbsp;&nbsp;<STRONG><A NAME="Q2_15">Where do I find nightly builds of the POP3 and SMTP beans?</A></STRONG><BR>
   You'll find them here: <A HREF="http://www.alphaworks.ibm.com/ab.nsf/">http://www.alphaworks.ibm.com/ab.nsf/</a>.<p>
   2.18&nbsp;&nbsp;<STRONG><A NAME="Q2_18">Is there a way to generate SOAP stub/skeleton code from a deployment descriptor?</A></STRONG><BR>
  @@ -198,6 +211,16 @@
   Brought to you by the same folks that brought you UDDI, is the Web Services Definition Language. WSDL is an XML schema that defines documents, in XML format, that describe SOAP services. There is an IBM alphaWorks toolkit that generates Java service client libraries and service handler skeletons from a WSDL document. See the WSDL specification (<A HREF="http://www-106.ibm.com/developerworks/library/w-wsdl.html">http://www-106.ibm.com/developerworks/library/w-wsdl.html</a>), and the IBM toolkit (<A HREF="http://www.alphaworks.ibm.com/tech/webservicestoolkit">http://www.alphaworks.ibm.com/tech/webservicestoolkit</a>).<p>
   2.36&nbsp;&nbsp;<STRONG><A NAME="Q2_36">How do I restrict access to the Apache SOAP administration client?</A></STRONG><BR>
   There are a number of possible solutions (none of which are perfect):<BR>- Modify your servlet container's security settings so that only certain IP addresses can access the admin page. If you are running Tomcat with its security manager, you can add an entry for the soap webapp in the .policy file located in the conf directory, and then you can control which IP addresses the webapp will accept connections from.<BR>- Modify the code - see <A HREF="http://soap.manilasites.com/stories/storyReader$13">http://soap.manilasites.com/stories/storyReader$13</a> <BR>- Modify your firewall configuration. Some firewalls can filter on URLs, and you could use this to prevent accesses to the admin page (although this wouldn't prevent someone from running the ServiceManagerClient directly).<p>
  +2.38&nbsp;&nbsp;<STRONG><A NAME="Q2_38">How can I get the IP address of a client that is using my SOAP Service?</A></STRONG><BR>
  +If you add a SOAPContext Object as first Parameter in the signature of your SOAP-service java-method, a 'SOAPContext' Object is passed to your class, e.g.:    <BR>    .mymethod(SOAPContext inContext, String inString)<BR><BR>This SOAPContext object gives you access to the HttpSession, HttpRequest, HttpResponse (see java doc for details).<BR>So, your SOAP service method can get the servlet request out of the context object, and then call the getRemoteAddr() method on the service request object: <BR><BR>import javax.servlet.http.*; <BR>.... <BR>HttpServletRequest req = <BR>(HttpServletRequest)soapCtx.getProperty(org.apache.soap.Constants.BAG_HTTPSERVLETREQUEST); <BR>String remoteIPAddress = req.getRemoteAddr();<BR><BR>NOTE: this will only work where the client and server are both using the Apache SOAP libraries.<p>
  +2.40&nbsp;&nbsp;<STRONG><A NAME="Q2_40">Can a client programmatically deploy a SOAP service?</A></STRONG><BR>
  +Yes, you can do this using org.apache.soap.util.ConfigManager. Have a look here: <A HREF="http://xml.apache.org/soap/docs/apiDocs/org/apache/soap/util/ConfigManager.html#deploy(org.apache.soap.server.DeploymentDescriptor">http://xml.apache.org/soap/docs/apiDocs/org/apache/soap/util/ConfigManager.html#deploy(org.apache.soap.server.DeploymentDescriptor</a>). <BR>Remember that to deploy a service, the service classes must already exist in the classpath on the server.  All you are doing here is configuring Apache-SOAP so that it knows about your service.<p>
  +2.41&nbsp;&nbsp;<STRONG><A NAME="Q2_41">I'd like to deploy multiple services using a single deployment descriptor file. Is this possible?</A></STRONG><BR>
  +Yes, it is. Have a look here: <A HREF="http://marc.theaimsgroup.com/?l=soap-user&m=100109136124059&w=2">http://marc.theaimsgroup.com/?l=soap-user&m=100109136124059&w=2</a>.<p>
  +2.42&nbsp;&nbsp;<STRONG><A NAME="Q2_42">Will Apache SOAP support JAXM when it's ready?</A></STRONG><BR>
  +There are no plans at present to support JAXM (<A HREF="http://java.sun.com/xml/jaxm/">http://java.sun.com/xml/jaxm/</a>) in Apache SOAP. However, there are plans to provide JAXM support in Axis (<A HREF="http://xml.apache.org/axis/">http://xml.apache.org/axis/</a>).<p>
  +2.43&nbsp;&nbsp;<STRONG><A NAME="Q2_43">Will Apache SOAP support JAX-RPC?</A></STRONG><BR>
  +There are no plans at present to support JAX-RPC (<A HREF="http://java.sun.com/xml/jaxrpc/">http://java.sun.com/xml/jaxrpc/</a>) in Apache SOAP. However, the Axis (<A HREF="http://xml.apache.org/axis/">http://xml.apache.org/axis/</a>) developers report that Axis is already moving towards full compliance with the current JAX-RPC draft spec.<p>
   
   
   <p><H2><u>3.&nbsp;&nbsp;Installation</u></H2>
  @@ -223,12 +246,14 @@
   Have a look here: <A HREF="http://marc.theaimsgroup.com/?l=soap-dev&m=97678072329144&q=p3">http://marc.theaimsgroup.com/?l=soap-dev&m=97678072329144&q=p3</a>.<p>
   3.11&nbsp;&nbsp;<STRONG><A NAME="Q3_11">How do I install Apache-SOAP on Apache-JServ?</A></STRONG><BR>
   Here are some instructions: <A HREF="http://marc.theaimsgroup.com/?l=soap-user&m=98890652006035&w=2">http://marc.theaimsgroup.com/?l=soap-user&m=98890652006035&w=2</a>.<p>
  -3.12&nbsp;&nbsp;<STRONG><A NAME="Q3_12">How do I install Apache-SOAP on iPlanet?</A></STRONG><BR>
  +3.12&nbsp;&nbsp;<STRONG><A NAME="Q3_12">How do I install Apache-SOAP on iPlanet Web Server?</A></STRONG><BR>
   See Erik Onnen's article here: <A HREF="http://marc.theaimsgroup.com/?l=soap-user&m=98753020626284&q=p3">http://marc.theaimsgroup.com/?l=soap-user&m=98753020626284&q=p3</a>.<p>
  +3.13&nbsp;&nbsp;<STRONG><A NAME="Q3_13">How do I install Apache-SOAP on iPlanet Application Server?</A></STRONG><BR>
  +See the instructions on the iPlanet.com web site: <BR><A HREF="http://developer.iplanet.com/appserver/samples/soap/docs/index.html">http://developer.iplanet.com/appserver/samples/soap/docs/index.html</a><p>
   3.14&nbsp;&nbsp;<STRONG><A NAME="Q3_14">How do I install Apache-SOAP on Unify's ServletExec?</A></STRONG><BR>
   See <A HREF="http://marc.theaimsgroup.com/?l=soap-user&m=97741067209680&w=2">http://marc.theaimsgroup.com/?l=soap-user&m=97741067209680&w=2</a>.<p>
   3.17&nbsp;&nbsp;<STRONG><A NAME="Q3_17">How do I install Apache-SOAP on Borland Application Server (BAS) 4.5?</A></STRONG><BR>
  -Installation of SOAP on BAS 4.5 is done in 3 steps:<BR>1) Deploy the [soap install dir]/webapps/soap.war using the deploy tool.<BR>2) Edit "[BAS451 install dir]\var\servers\[server name]\adm\properties\ias.config" and add a line like "addpath [xerces install dir]/xerces.jar" at the end of the modifiable section."<BR>3) Add the required libraries either in the appserver or in the webcontainer.<BR> <BR>See <A HREF="http://marc.theaimsgroup.com/?l=soap-user&m=99728307503567&w=2">http://marc.theaimsgroup.com/?l=soap-user&m=99728307503567&w=2</a>. Thanks to  <BR>Laurent Letellier and Colin Mondesir for this information.<p>
  +Installation of SOAP on BAS 4.5 is done in 3 steps:<BR>1) Deploy the [soap install dir]/webapps/soap.war using the deploy tool.<BR>2) Edit "[BAS451 install dir]\var\servers\[server name]\adm\properties\ias.config" and add a line like "addpath [xerces install dir]/xerces.jar" at the end of the modifiable section.<BR>3) Add the required libraries either in the appserver or in the webcontainer.<BR> <BR>See <A HREF="http://marc.theaimsgroup.com/?l=soap-user&m=99728307503567&w=2">http://marc.theaimsgroup.com/?l=soap-user&m=99728307503567&w=2</a>. Thanks to  <BR>Laurent Letellier and Colin Mondesir for this information.<p>
   
   
   <p><H2><u>4.&nbsp;&nbsp;Troubleshooting</u></H2>
  @@ -262,6 +287,8 @@
   Ensure that you have added activation.jar and mail.jar to your classpath.<p>
   4.19&nbsp;&nbsp;<STRONG><A NAME="Q4_19">Help! I'm getting this error: "java.lang.NoClassDefFoundError: javax/xml/transform/TransformerException"</A></STRONG><BR>
   The javax.xml.transform.TransformerException class is in the xalan library - see <A HREF="http://xml.apache.org/xalan-j/index.html">http://xml.apache.org/xalan-j/index.html</a>. Ensure that xalan.jar is in your SOAP server's classpath. If you're using an XSLT library other than xalan, make sure the jar defines javax.xml.transform.TransformerException.<p>
  +4.20&nbsp;&nbsp;<STRONG><A NAME="Q4_20">I'm getting a segmentation fault when I try to run SOAP on Red Hat. What's wrong?</A></STRONG><BR>
  +Take a look at <A HREF="http://java.sun.com/j2se/1.3/jre/install-linux.html">http://java.sun.com/j2se/1.3/jre/install-linux.html</a>. It describes a bug in java that causes a segmentation fault. The glibc-2.2x libraries don't correctly handle initial stack sizes larger than 6Mb.<BR>There is a workaround: Use "ulimit -s 2048" in bash shell or "limit stacksize 2048" in tcsh to limit the initial thread stack to 2 MB.<p>
   
   
   <p><H2><u>5.&nbsp;&nbsp;Design and Architecture Issues</u></H2>
  @@ -324,22 +351,26 @@
   A WSDL document does not actually get used directly by the Apache SOAP API in any way. It is simply an XML grammer that allows non-Apache SOAP client applications to discover the methods and classes available in a SOAP service.<p>
   8.3&nbsp;&nbsp;<STRONG><A NAME="Q8_3">How can I generate a WSDL file for my SOAP service?</A></STRONG><BR>
   You can use IBM web services toolkit - WSTK - (class<BR>com.ibm.wstk.swrapper.ui.SWrapperGUI) on <A HREF="http://www.alphaworks.ibm.com/tech/wsde">http://www.alphaworks.ibm.com/tech/wsde</a>, or IBM Web services development environment on <A HREF="http://www.ibm.com/developerworks/webservices">http://www.ibm.com/developerworks/webservices</a>. <BR><BR>You could also consider using GLUE, which includes a command line tool for static generation of WSDL: <A HREF="http://www.themindelectric.com/">http://www.themindelectric.com/</a>. <BR><BR>The Apache AXIS folks are also working on a tool called java2wsdl. See <A HREF="http://xml.apache.org/axis/">http://xml.apache.org/axis/</a> for more information.<BR><BR>SilverStream now provide a product called jBrokerWeb which includes compilers to convert WSDL to Java and vice versa. See <A HREF="http://extend.silverstream.com/workbench/app/jsp/jbrokerweb.jsp">http://extend.silverstream.com/workbench/app/jsp/jbrokerweb.jsp</a> for more information.<p>
  -8.4&nbsp;&nbsp;<STRONG><A NAME="Q8_4">Is there a tool that can validate WSDL?</A></STRONG><BR>
  +8.4&nbsp;&nbsp;<STRONG><A NAME="Q8_4">How can I generate Java code from an existing WSDL file?</A></STRONG><BR>
  +WASP from Systinet (formerly Idoox) includes a tool called WSDLCompiler. It is able to generate Java and JavaScript code from WSDL 1.1. It is available at <A HREF="http://www.systinet.com/.<BR><BR>GLUE">http://www.systinet.com/.<BR><BR>GLUE</a> from The Mind Electric includes a tool called 'wsdl2java' which also does this. See <A HREF="http://www.themindelectric.com/">http://www.themindelectric.com/</a>.<p>
  +8.5&nbsp;&nbsp;<STRONG><A NAME="Q8_5">Is there a command-line utility that I can use to generate WSDL stub and skeleton files?</A></STRONG><BR>
  +Yes - the IBM web services toolkit (<A HREF="http://www.ibm.com/developerworks/webservices/">http://www.ibm.com/developerworks/webservices/</a>) includes a command-line java application that should do what you want: <BR>.com.ibm.wsdl.Main -?<BR>Note that:<BR>(a) It is in the wsdl.jar library.<BR>(b) Passing in '-?' (without the apostrophes) gets you a list of available commands that the class supports.<p>
  +8.6&nbsp;&nbsp;<STRONG><A NAME="Q8_6">Is there a tool that can validate WSDL?</A></STRONG><BR>
   Yes: Simon Fell has written a Schematron-based validator for SOAP oriented WSDL documents. See here: <A HREF="http://www.pocketsoap.com/wsdl/">http://www.pocketsoap.com/wsdl/</a>. Note that the current version only checks the relationships between the various parts of the WSDL, it doesn't really check anything in the schema sections yet. A couple of folks on the schematron mailing list are working on some XSD checking code, and it will be added to the validator when its done.<p>
  -8.5&nbsp;&nbsp;<STRONG><A NAME="Q8_5">Is there a command-line utility that I can use to generate a WSDL File?</A></STRONG><BR>
  +8.7&nbsp;&nbsp;<STRONG><A NAME="Q8_7">Is there a command-line utility that I can use to generate a WSDL File?</A></STRONG><BR>
   Yes - the IBM web services toolkit (WSTK) 2.3 (<A HREF="http://www.ibm.com/developerworks/webservices/">http://www.ibm.com/developerworks/webservices/</a>) includes a utility called 'wsdlgen'. It is in WSTK_HOME/bin.<BR>See also the Open Source WSDL4J project on <A HREF="http://oss.software.ibm.com/developerworks/projects/wsdl4j/">http://oss.software.ibm.com/developerworks/projects/wsdl4j/</a>.<p>
  -8.6&nbsp;&nbsp;<STRONG><A NAME="Q8_6">Is there a command-line utility that I can use to generate WSDL stub and skeleton files?</A></STRONG><BR>
  -Yes - the IBM web services toolkit (<A HREF="http://www.ibm.com/developerworks/webservices/">http://www.ibm.com/developerworks/webservices/</a>) includes a command-line java application that should do what you want: <BR>.com.ibm.wsdl.Main -?<BR>Note that:<BR>(a) It is in the wsdl.jar library.<BR>(b) Passing in '-?' (without the apostrophes) gets you a list of available commands that the class supports.<p>
  -8.7&nbsp;&nbsp;<STRONG><A NAME="Q8_7">Any one know is there any open source UDDI  server implementation?  (the UDDI4J server is locked into DB2)</A></STRONG><BR>
  -Have a look at the following:<BR>- Idoox WASP <A HREF="http://www.idoox.com">http://www.idoox.com</a> (not open source, uses JDBC)<BR>- The Mind Electric GLUE <A HREF="http://www.themindelectric.com">http://www.themindelectric.com</a> (not open source, uses JDBC)<BR>- jUUDI, on sourceforge at <A HREF="http://sourceforge.net/projects/uddi/">http://sourceforge.net/projects/uddi/</a>. It's relatively young (i.e. the current release is an alpha), but SOAP users report that the guy running the project is very helpful, and that it looks like the code runs off whichever db platform you want. Ensure you get the code from CVS, not the (tarball) release.<BR>- pUDDIng at <A HREF="http://www.opensorcerer.org/">http://www.opensorcerer.org/</a> (UDDI v2.0 on Oracle). The author is talking about adding support for other database platforms.<p>
  -8.8&nbsp;&nbsp;<STRONG><A NAME="Q8_8">Is there a tool that can be used to parse WSDL files?</A></STRONG><BR>
  +8.8&nbsp;&nbsp;<STRONG><A NAME="Q8_8">Any one know is there any open source UDDI  server implementation?  (the UDDI4J server is locked into DB2)</A></STRONG><BR>
  +Have a look at the following:<BR>- Systinet (formerly Idoox) WASP <A HREF="http://www.systinet.com/">http://www.systinet.com/</a> (not open source, uses JDBC)<BR>- The Mind Electric GLUE <A HREF="http://www.themindelectric.com">http://www.themindelectric.com</a> (not open source, uses JDBC)<BR>- jUUDI, on sourceforge at <A HREF="http://sourceforge.net/projects/uddi/">http://sourceforge.net/projects/uddi/</a>. It's relatively young (i.e. the current release is an alpha), but SOAP users report that the guy running the project is very helpful, and that it looks like the code runs off whichever db platform you want. Ensure you get the code from CVS, not the (tarball) release.<BR>- pUDDIng at <A HREF="http://www.opensorcerer.org/">http://www.opensorcerer.org/</a> (UDDI v2.0 on Oracle). The author is talking about adding support for other database platforms.<p>
  +8.9&nbsp;&nbsp;<STRONG><A NAME="Q8_9">Is there a tool that can be used to parse WSDL files?</A></STRONG><BR>
   Yes, IBM have one. The Web Services Description Language for Java Toolkit (WSDL4J) allows the creation, representation, and manipulation of WSDL documents describing services. See <A HREF="http://oss.software.ibm.com/developerworks/projects/wsdl4j/">http://oss.software.ibm.com/developerworks/projects/wsdl4j/</a>.<p>
  -8.9&nbsp;&nbsp;<STRONG><A NAME="Q8_9">Where should I place my WSDL files?</A></STRONG><BR>
  +8.10&nbsp;&nbsp;<STRONG><A NAME="Q8_10">Where should I place my WSDL files?</A></STRONG><BR>
   Put the files in a directory on your web server, and make them available to SOAP clients. Don't forget that to put them in a location where SOAP clients have adequate permissions to download them (you can use your web browser to test downloading/viewing the WSDL file).<p>
  -8.10&nbsp;&nbsp;<STRONG><A NAME="Q8_10">Where can I find out about how WSDL and UDDI work together?</A></STRONG><BR>
  +8.11&nbsp;&nbsp;<STRONG><A NAME="Q8_11">Where can I find out about how WSDL and UDDI work together?</A></STRONG><BR>
   Have a look here: <A HREF="http://www.uddi.org/bestpractices.html">http://www.uddi.org/bestpractices.html</a><p>
  -8.11&nbsp;&nbsp;<STRONG><A NAME="Q8_11">Where can I find out more about UDDI?</A></STRONG><BR>
  +8.12&nbsp;&nbsp;<STRONG><A NAME="Q8_12">Where can I find out more about UDDI?</A></STRONG><BR>
   Have a look here: <A HREF="http://www.uddi.org/whitepapers.html">http://www.uddi.org/whitepapers.html</a><p>
  +8.13&nbsp;&nbsp;<STRONG><A NAME="Q8_13">The WSTK proxygen tool generates a class that requires a URL parameter in the constructor. What should I use?</A></STRONG><BR>
  +I'm using the "proxygen" tool in IBM WSTK 2.4 to generate client proxy code from a WSDL file.  My problem is that the proxy class it generates requires a URL parameter in the constructor. But I want to create the proxy for an implementation, so the URL should be included in the class. How do I do this?<BR>The generated proxy class has a static field<BR> public static java.net.URL[] _KnownServiceLocations;<BR>In the constructor all known locations found in WSDL will be added to this field. So when you create the proxy object, use the first element of _KnownServiceLocations as the URL.<p>
   
   
   <p><H2><u>9.&nbsp;&nbsp;SOAP and .NET</u></H2>
  @@ -351,6 +382,8 @@
   Have a look here:<BR><A HREF="http://xml.apache.org/soap/docs/guide/interop.html">http://xml.apache.org/soap/docs/guide/interop.html</a> <BR><A HREF="http://www-106.ibm.com/developerworks/library/ws-ref3/?n-ws-5241">http://www-106.ibm.com/developerworks/library/ws-ref3/?n-ws-5241</a> <BR><A HREF="http://www.perfectxml.com/articles/xml/soapguide.asp">http://www.perfectxml.com/articles/xml/soapguide.asp</a><p>
   9.7&nbsp;&nbsp;<STRONG><A NAME="Q9_7">Where can I find an example of how to use the low-level MS SOAP API?</A></STRONG><BR>
   Here is a tutorial which shows how to write a SOAP client using the MS SOAP low-level API: <A HREF="http://www.soapuser.com/client4.html">http://www.soapuser.com/client4.html</a><p>
  +9.8&nbsp;&nbsp;<STRONG><A NAME="Q9_8">How do I maintain sessions between Apache-SOAP and MS SOAP?</A></STRONG><BR>
  +Unfortunately, the SOAP specifications don't say anything about session maintenance, so each implementor has done something different. MS-Soap maintains sessions through the 'IHeaderHandler' interface. Apache-SOAP uses cookies. <BR>Currently MS-Soap and Apache Soap are not interoperable as far as session maintenance is concerned this is because unlike Apache SOAP, MS-SOAP does not allow you to set cookies in the HTTP header.<p>
   </OL>
   
   <HR NOSHADE TITLE="Page Footer"></BODY></HTML>
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: general-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: general-cvs-help@xml.apache.org