Web Service Introspection + Ant

I'm working on a large project which involves pulling data
from over 30 different web services. I'm using the Web Service
Introspection Wizard in Flex Builder 3 to create proxy classes. I
am then running my own custom ant tasks to automatically generate
further wrappers based on the generated proxy classes.
I would like to automate the whole process such that I can
update all Web Service Proxy classes without going through the Flex
Builder Wizards, perhaps from a java class or ant task. Is this at
all possible? Is there an API I can tap into to do this? I don't
want to sit there going through the wizard over 30 times to update
each service manually...

*bump* Anyone?

Similar Messages

  • Web Service Introspection

    The Web Service Introspection Wizards are very helpful
    (especially when creating some additional wrappers on top of them).
    I have two questions however:
    1. How do I set the EndPoint locations for different
    deployment environments? It seems the endpoints are copyed from the
    wsdl during introspection and hardcoded into the
    Base<ServiceName>Service.as class. Creating a
    <ServiceName>Service instance allows you to specify a
    destination and rootURL as optional parameters to override this,
    but this requires use of a services-config.xml file, which is not
    generated by default in simple Flex Builder applications, and on
    which I cannot find any solid documentation on... I'm currently
    having to search & replace the hardcoded endpoints as part of
    an ant task before building the client, not a very ideal
    solution...
    2. Is there a way to automate the Introspection Wizards via
    API calls or ant tasks? Ideally I would like to automate my entire
    build script in a single ant task, without having to ask the user
    to go through the FB wizards...

    *bump* Anyone?

  • Flex 4 Web Service Introspection For Dynamic WSDL Locations

    In Flex 3, introspecting a web service resulted in a constructor that allowed the location of the web service to change at runtime.  It appears that the Web Service introspection tool now only allows the single WSDL URI that was specified in the WS Wizard.  It this the case or am I just missing something?
    Flex 3 introspected services would create a service class with the following constructor signatures:
    private var service:MyWebService;
    service= new MyWebService(null, wsdlLocation);  // With parameters
    or you could use:
    service = new MyWebService(); //with no parameters
    In Flex 4, it appears that you can only use:
    service = new MyWebService();
    So if you don't know the web server location until runtime, am I going to need to manually override the instrospected/generated _super_MyWebService.as class in order to get back the ability to point to different servers at runtime?
    Anyone know why this has changed, or what the "new" way the Flash Builder 4 web service introspection tool uses for dynamic servers?
    Thanks a bunch!

    In Flex 4, it appears that you can only use:
    service = new MyWebService();
    add
    service.wsdl = "your wsdl";
    However if you want this to work you have to remove the hardcoded wsdl from the
    superclass otherwise it will not reset it,
    C

  • Build script for CXF web service using ant.

    Hi, I am trying to build a CXF web service using ant. Does any one have a sample build script for it or steps (such as 1. build wsdl using java2wsdl task, 2. create a war etc.....) to follow to successfully build a web service using Apache CXF and ANT? Your help is greatly appreciated. I am using tomcat server and spring.
    Thanks

    Hi,
    You can find and download sample of project and build scripts from
    'Design and implement POJO Web services using Spring and Apache CXF, Part 1: Introduction to Web services creation using CXF and Spring':
    http://www.ibm.com/developerworks/library/ws-pojo-springcxf/

  • CompileException: Error compiling web service (using ant jwsc)

    Hi,
    I try to use the ant task jwsc to create my portable artefacts for a web service.
    Unfortunately I get the following exception:
    BUILD FAILED
    C:\Sun\jwsdp-2.0\apache-ant\bin\build.xml:7: weblogic.wsee.tools.jws.build.CompileException: Error compiling web service: C:\Sun\jwsdp-2.0\apache-ant\bin\src\test\WsTest.java
    I do not know why the ant task can not compile my jws file (shown below) whereas Eclipse can!
    package test;
    import javax.jws.WebService;
    @WebService (name="WsTestName", serviceName="WsTestServiceName")
    public class WsTest {
    * @param name
    * @return Say hello to the person.
    public String sayHello(String name) {
    return "Hello, " + name + "!";
    I hope somebody can help me.
    Thanks
    Franz

    I thought I would post an update since I found a solution. The problem was a ClassCast exception in a part of the SSL stack, that wanted to use the ant BuildException class. This has the effect of hiding the real issue which was that the SSL connection was not successfully occuring. The real problem was that the SSL connection started with a WSDL retrieved via SSL, but the connection for the port was through a username/password. When a username/password is used to create a port, the WL stack falls back to http and causes a ClassCast exception on weblogic.wsee.connection.transport.http.HttpTransportInfo. The solution is to create an https transport object when the service impl is created:
    HttpsTransportInfo transport = new HttpsTransportInfo ();
    transport.setUsername (user.getBytes ());
    transport.setPassword (pass.getBytes ());
    gServiceImpl = new PersistenceManagerService_Impl (url, transport);
    and to create the port without parameters:
    port = getServiceImpl ().getPersistenceManagerServicePort ();
    This allows one-way SSL with username/password for the connection.

  • Web services using Ant, Axis2 and Jdk

    Hi Experts,
    I was able to deploy a web service locally using Ant, Axis2 and Jdk. Then I tried to create a stub using the command "%AXIS2_HOME%\bin\WSDL2Java -uri StockQuoteService.wsdl -d adb –o client" which generated an Stub and a handler. Now I have a pblm in creating the client program. Where shld the client pgm be placed and how to run it. Please help.
    Thanks in Advance,
    Sharmele.

    Anywhere you want. You create a project, since you use ANT you give it its own ANT build file and you put the generated stub classes as part of it like you would your own source files. Then you write the code to actually call the methods of the stub classes.
    Note that if you generate class files, it might be better to generate source files in stead and simply compile them as part of your client application code.

  • Getting an error while building a sample web service

    Hi,
    I am beginner in web services and started working on a sample application in a web service tutorial.
    Build is failing in build.xml file while building sample web service using ant tool.
    antBuildfile: build.xml
    clean:
    setup:
    [mkdir] Created dir: /tmp/output/WEB-INF/classes
    [mkdir] Created dir: /tmp/client_classes
    compile.server:
    [javac] Compiling 1 source file to /tmp/output/WEB-INF/classes
    webservice.build:
    webss.build:
    BUILD FAILED
    Z:/JAVA-COBOL/sample1/tutorial/sample1/build.xml:43: The following error occurred while executing this line:
    Z:/JAVA-COBOL/sample1/tutorial/sample1/build-webss.xml:10: Problem: failed to create task or type source2wsdd*_
    Cause: The name is undefined.
    Action: Check the spelling.
    Action: Check that any custom tasks/types have been declared.
    Action: Check that any <presetdef>/<macrodef> declarations have taken place.
    Can anyone look into this and let me know if you have any idea on this?
    Thanks,
    SRoop.
    Edited by: SRoop on Jun 20, 2008 9:11 AM
    Edited by: SRoop on Jun 20, 2008 9:14 AM
    Edited by: SRoop on Jun 21, 2008 5:51 AM

    Hi,
    I am beginner in web services and started working on a sample application in a web service tutorial.
    Build is failing in build.xml file while building sample web service using ant tool.
    antBuildfile: build.xml
    clean:
    setup:
    [mkdir] Created dir: /tmp/output/WEB-INF/classes
    [mkdir] Created dir: /tmp/client_classes
    compile.server:
    [javac] Compiling 1 source file to /tmp/output/WEB-INF/classes
    webservice.build:
    webss.build:
    BUILD FAILED
    Z:/JAVA-COBOL/sample1/tutorial/sample1/build.xml:43: The following error occurred while executing this line:
    Z:/JAVA-COBOL/sample1/tutorial/sample1/build-webss.xml:10: Problem: failed to create task or type source2wsdd*_
    Cause: The name is undefined.
    Action: Check the spelling.
    Action: Check that any custom tasks/types have been declared.
    Action: Check that any <presetdef>/<macrodef> declarations have taken place.
    Can anyone look into this and let me know if you have any idea on this?
    Thanks,
    SRoop.
    Edited by: SRoop on Jun 20, 2008 9:11 AM
    Edited by: SRoop on Jun 20, 2008 9:14 AM
    Edited by: SRoop on Jun 21, 2008 5:51 AM

  • Connection error when deploying Web Services example

    C:\java\sample\how-to-web-services\ejb>ant deploy-usingadmin.jar
    Buildfile: build.xml
    common:
    [echo] BuildName: EJB Stateless Web Service
    [echo] BuildHome: C:\java\sample\how-to-web-services\ejb
    [echo] BuildFile: C:\java\sample\how-to-web-services\ejb\build.xml
    [echo] BuildJVM: 1.3
    init:
    deploy-ear:
    [java] Error: javax.naming.NamingException: Lookup error: java.net.ConnectE
    xception: Connection refused: connect; nested exception is:
    [java] java.net.ConnectException: Connection refused: connect
    bind-web-app: [java] Java Result: 1
    [java] Error: javax.naming.NamingException: Lookup error: java.net.ConnectE
    xception: Connection refused: connect; nested exception is:
    [java] java.net.ConnectException: Connection refused: connect
    deploy-usingadmin.jar:
    BUILD SUCCESSFUL
    Total time: 7 seconds
    Thanks,

    You have to start OC4J and make changes in the common.xml/buld.xml to have connection information for your OC4J instance.
    Otherwise you can take this EAR file and deploy in your OC4J instance.
    regards
    Debu

  • Web service Assembler Tool

    Hi,
    I try to do the exemple : How to process SOAP headers with JAX-RPC Web Service. the ant task use Web services Assembler tool (wsa) can any one give me more information about it ? I try to search on otn about web service assembler tool and I found any document.
    does this tools used by Jdeveloper ?
    thanks,
    Lila

    From the documentation mentioned above, page 149:
    'The contents of the classpath are not copied to the archive. If you specify the
    classpath or lib arguments to any of the *Assemble commands, you must be
    sure that the classes found in the classpath are also available in the server.
    You can add files to an EAR or WAR file before it is archived by the *Assemble
    commands. For more information, see "Adding Files to an Archive".'
    In your case, you should add a copy target before the assemble:
    <copy file="library.jar" todir="build/war/WEB-INF/>
    Make sure the target directory match with your setup.

  • Making a Web Service Manually

    Hey, Can Anyone help me?.
    I Want to make a Web Service in J2EE, but I don't want to use the JWSDK. I want to do all without assistants.
    Anyone have some tutorial or manual that con help me.
    Sorry for my bad english, I don`t speak english very well.
    Thanks a lot.
    Marcos L�pez.
    Mexico.

    The JWS tutorial (http://java.sun.com/webservices/downloads/webservicespack.html) does a reasonable job of walking you through a Web service using Ant. We use GNU make, so we looked at the various Ant build.xml files in the tutorial examples for ideas.

  • "Binding is null" when calling web service

    Hello,
    I'm trying to call a web service from an automatic activity using:
    str as String
    hw as RecupelWebServices.HelloWorld.DummyWebService = MyWebServices.HelloWorld.DummyWebService()
    helloWorld hw
         returning str = helloWorldResult
    (similar to the documentation example)
    But it fails, warning that:
    a component failed trying to execute activity ...
    The method 'CIL_myMethod' from class 'MyProject.MyProcessName.Default_1_0.Instance' could not be successfully executed.
    Caused by: Binding is null, maybe this web service was introspected with an old version. Try to reintrospect it.
    fuego.lang.ComponentExecutionException: The method 'CIL_myMethod' from class 'MyProject.MyProcessName.Default_1_0.Instance' could not be successfully executed.
    Introspection went ok, although with a warning:
    Introspecting...
    downloading /DummyWebService/HelloWorld.asmx?wsdl
    parsing /DummyWebService/HelloWorld.asmx?wsdl
    checking /DummyWebService/HelloWorld.asmx?wsdl
    [Warning] The binding 'DummyWebServiceSoap12' with type 'tns:DummyWebServiceSoap'is unsupported. Components will not be generaded for this binding..
    'http://tempuri.org/' was parsed.
    Analyzing dependecies for module 'MyWebServices.HelloWorld'...
    Analyzing dependecies for module 'MyWebServices.HelloWorld'...
    Analyzing Components
    Storing Instrospected Types
    Introspection completed. Errors: 0, Warnings: 1.
    The web service is also accessible outside of the BPM environment.
    Any ideas what I'm missing here?

    I'm having the same issue with OBPM Studio 10.3.1 build #98887 when trying to invoke a Web Service introspected from OSB.
    Caused by: Binding is null, maybe this web service was introspected with an old version. Try to reintrospect it.
    When introspecting I got one warning that doesn't seem to have any relation with the runtime error:
    +[Warning] It is not recommended the usage of SOAP encoding array types, specially if you are working with document/literal WSDLs (complex type name: List in namespace: java:java.util ).+

  • Create Web Services in WebLogic Workshop

    I'm new to WebLogic. Basically I need to create a web service to grab data from
    database, then to convert the data to XML, then to call a transformation control
    to map to another XML schema, then to build the XML into a web service and send
    out to client.
    All the web service examples are not using Workshop, thus I have no idea how to
    invoke a control (transformation control) within the code. Also, what are the
    differences to implement web services in ANT and in Workshop?
    Thanks,

    Hi Henry,
    Try taking a look at:
    http://e-docs.bea.com/workshop/docs81/doc/en/core/index.html
    For using Ant with WLW, see:
    http://e-docs.bea.com/workshop/docs81/doc/en/workshop/guide/howdoi/HowUseCustomAntBuild.html?skipReload=true
    Bruce
    Henry Niu wrote:
    >
    I'm new to WebLogic. Basically I need to create a web service to grab data from
    database, then to convert the data to XML, then to call a transformation control
    to map to another XML schema, then to build the XML into a web service and send
    out to client.
    All the web service examples are not using Workshop, thus I have no idea how to
    invoke a control (transformation control) within the code. Also, what are the
    differences to implement web services in ANT and in Workshop?
    Thanks,

  • Problem while Introspecting a Web-Service in OBPM 10GR3 studio

    I get the following problem while Introspecting a Web-Service in OBPM 10GR3 studio:-
    Introspecting...
    downloading /test-ws/testc?wsdl [Error] Instrospection exception: Web Service WSDL parse exception: HTTPS hostname wrong: should be <test-01.test.net>...
    Any idea why?
    It runs well in a browser, eclipse and SOAP UI?

    have you create the destination?
    do  you use the wizard to generate code?
    usually there is catch clause for this line of code
    wdContext.currentRequest_SERVICE_MDM_LOOKUPElement().modelObject().execute();
    Edited by: John Wu on Dec 16, 2010 11:51 PM

  • ANT task wsgen error while deploying RPC style web service

    Hi
    I am trying to assemble/deploy an rpc style weblogic web service using the 'wsgen'
    Ant task and the build.xml scripts provided with the samples. I get this error:
    Please help
    Thanks,
    Praveen
    C:\test>ant
    Buildfile: build.xml
    webservice:
    clean:
    [delete] Deleting directory C:\test\build
    init:
    [mkdir] Created dir: C:\test\build
    [mkdir] Created dir: C:\test\build\META-INF
    [copy] Copying 5 files to C:\test\build\META-INF
    compile_ejb:
    [javac] Compiling 5 source files to C:\test\build
    jar_ejb:
    [jar] Building jar: C:\test\a_statelessSession.jar
    ejbc:
    all:
    wsgen:
    Error at line:8 col:12 ':' Already got a ':' in name
    at weblogic.xml.babel.baseparser.SAXElementFactory.createSAXParseExc
    on(SAXElementFactory.java:60)
    at weblogic.xml.babel.parsers.StreamParser.<init>(StreamParser.java:
    at weblogic.xml.babel.parsers.BabelXMLEventStream.startDocument(Babe
    EventStream.java:28)
    at weblogic.soap.WebServiceProxy.getXMLStream(WebServiceProxy.java:6
    at weblogic.soap.WebServiceProxy.getXMLStream(WebServiceProxy.java:5
    at weblogic.soap.WebServiceProxy.getServiceFrom(WebServiceProxy.java
    at weblogic.ant.taskdefs.ejb.WSGenHelper.writeClientJar(WSGenHelper.
    :1125)
    at weblogic.ant.taskdefs.ejb.WSGenHelper.writeWSDL(WSGenHelper.java:
    at weblogic.ant.taskdefs.ejb.WSGenHelper.saveDescriptors(WSGenHelper
    a:1415)
    at weblogic.ant.taskdefs.ejb.WSGenHelper.output(WSGenHelper.java:148
    at weblogic.ant.taskdefs.ejb.WSGenHelper.doit(WSGenHelper.java:1517)
    at weblogic.ant.taskdefs.ejb.WSGen.execute(WSGen.java:93)
    at org.apache.tools.ant.Target.execute(Target.java:153)
    at org.apache.tools.ant.Project.runTarget(Project.java:898)
    at org.apache.tools.ant.Project.executeTarget(Project.java:536)
    at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:213)
    at org.apache.tools.ant.Target.execute(Target.java:153)
    at org.apache.tools.ant.Project.runTarget(Project.java:898)
    at org.apache.tools.ant.Project.executeTarget(Project.java:536)
    at org.apache.tools.ant.Project.executeTargets(Project.java:510)
    at org.apache.tools.ant.Main.runBuild(Main.java:421)
    at org.apache.tools.ant.Main.main(Main.java:149)
    BUILD SUCCESSFUL
    Total time: 34 seconds
    C:\test>

    WLS6.1, service pack 2? I didn't know there were any service packs for 6.1 and
    6.0 didn't support wsgen and web services??
    simon.
    manoj cheenath <[email protected]> wrote:
    >
    >
    This is a known bug which is fixed in WLS 6.1 SP2.
    The workaround is to change the complex data types
    to have more than one level package names.
    for eg: change ....
    package foo;
    class Data{}
    to :
    package foo.bar;
    class Data{}
    -manoj
    Praveen wrote:
    Hi
    I am trying to assemble/deploy an rpc style weblogic web service usingthe 'wsgen'
    Ant task and the build.xml scripts provided with the samples. I getthis error:
    Please help
    Thanks,
    Praveen
    C:\test>ant
    Buildfile: build.xml
    webservice:
    clean:
    [delete] Deleting directory C:\test\build
    init:
    [mkdir] Created dir: C:\test\build
    [mkdir] Created dir: C:\test\build\META-INF
    [copy] Copying 5 files to C:\test\build\META-INF
    compile_ejb:
    [javac] Compiling 5 source files to C:\test\build
    jar_ejb:
    [jar] Building jar: C:\test\a_statelessSession.jar
    ejbc:
    all:
    wsgen:
    Error at line:8 col:12 ':' Already got a ':' in name
    at weblogic.xml.babel.baseparser.SAXElementFactory.createSAXParseExc
    on(SAXElementFactory.java:60)
    at weblogic.xml.babel.parsers.StreamParser.<init>(StreamParser.java:
    at weblogic.xml.babel.parsers.BabelXMLEventStream.startDocument(Babe
    EventStream.java:28)
    at weblogic.soap.WebServiceProxy.getXMLStream(WebServiceProxy.java:6
    at weblogic.soap.WebServiceProxy.getXMLStream(WebServiceProxy.java:5
    at weblogic.soap.WebServiceProxy.getServiceFrom(WebServiceProxy.java
    at weblogic.ant.taskdefs.ejb.WSGenHelper.writeClientJar(WSGenHelper.
    :1125)
    at weblogic.ant.taskdefs.ejb.WSGenHelper.writeWSDL(WSGenHelper.java:
    at weblogic.ant.taskdefs.ejb.WSGenHelper.saveDescriptors(WSGenHelper
    a:1415)
    at weblogic.ant.taskdefs.ejb.WSGenHelper.output(WSGenHelper.java:148
    at weblogic.ant.taskdefs.ejb.WSGenHelper.doit(WSGenHelper.java:1517)
    at weblogic.ant.taskdefs.ejb.WSGen.execute(WSGen.java:93)
    at org.apache.tools.ant.Target.execute(Target.java:153)
    at org.apache.tools.ant.Project.runTarget(Project.java:898)
    at org.apache.tools.ant.Project.executeTarget(Project.java:536)
    at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:213)
    at org.apache.tools.ant.Target.execute(Target.java:153)
    at org.apache.tools.ant.Project.runTarget(Project.java:898)
    at org.apache.tools.ant.Project.executeTarget(Project.java:536)
    at org.apache.tools.ant.Project.executeTargets(Project.java:510)
    at org.apache.tools.ant.Main.runBuild(Main.java:421)
    at org.apache.tools.ant.Main.main(Main.java:149)
    BUILD SUCCESSFUL
    Total time: 34 seconds
    C:\test>
    -----------------------------------------------------------------<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
    <html>
    This is a known bug which is fixed in WLS 6.1 SP2.
    <p>The workaround is to change the complex data types
    <br>to have more than one level package names.
    <p>for eg: change ....
    <p><font color="#3366FF">package foo;</font>
    <br>class Data{}
    <p>to :
    <p><font color="#3333FF">package foo.bar;</font>
    <br>class Data{}
    <p>-manoj
    <p>Praveen wrote:
    <blockquote TYPE=CITE>Hi
    <br>I am trying to assemble/deploy an rpc style weblogic web service
    using
    the 'wsgen'
    <br>Ant task and the build.xml scripts provided with the samples. I get
    this error:
    <br>Please help
    <br>Thanks,
    <br>Praveen
    <br>-----------------------------------------------------------------
    <br>C:\test>ant
    <br>Buildfile: build.xml
    <p>webservice:
    <p>clean:
    <br>   [delete] Deleting directory C:\test\build
    <p>init:
    <br>    [mkdir] Created dir: C:\test\build
    <br>    [mkdir] Created dir: C:\test\build\META-INF
    <br>     [copy] Copying 5 files to C:\test\build\META-INF
    <p>compile_ejb:
    <br>    [javac] Compiling 5 source files to C:\test\build
    <p>jar_ejb:
    <br>      [jar] Building jar: C:\test\a_statelessSession.jar
    <p>ejbc:
    <p>all:
    <p>wsgen:
    <br>Error at line:8 col:12  ':' Already got a ':' in name
    <br>        at weblogic.xml.babel.baseparser.SAXElementFactory.createSAXParseExc
    <br>on(SAXElementFactory.java:60)
    <br>        at weblogic.xml.babel.parsers.StreamParser.<init>(StreamParser.java:
    <br>        at weblogic.xml.babel.parsers.BabelXMLEventStream.startDocument(Babe
    <br>EventStream.java:28)
    <br>        at weblogic.soap.WebServiceProxy.getXMLStream(WebServiceProxy.java:6
    <br>        at weblogic.soap.WebServiceProxy.getXMLStream(WebServiceProxy.java:5
    <br>        at weblogic.soap.WebServiceProxy.getServiceFrom(WebServiceProxy.java
    <br>)
    <br>        at weblogic.ant.taskdefs.ejb.WSGenHelper.writeClientJar(WSGenHelper.
    <br>:1125)
    <br>        at weblogic.ant.taskdefs.ejb.WSGenHelper.writeWSDL(WSGenHelper.java:
    <br>)
    <br>        at weblogic.ant.taskdefs.ejb.WSGenHelper.saveDescriptors(WSGenHelper
    <br>a:1415)
    <br>        at weblogic.ant.taskdefs.ejb.WSGenHelper.output(WSGenHelper.java:148
    <br>        at weblogic.ant.taskdefs.ejb.WSGenHelper.doit(WSGenHelper.java:1517)
    <br>        at weblogic.ant.taskdefs.ejb.WSGen.execute(WSGen.java:93)
    <br>        at org.apache.tools.ant.Target.execute(Target.java:153)
    <br>        at org.apache.tools.ant.Project.runTarget(Project.java:898)
    <br>        at org.apache.tools.ant.Project.executeTarget(Project.java:536)
    <br>        at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:213)
    <br>        at org.apache.tools.ant.Target.execute(Target.java:153)
    <br>        at org.apache.tools.ant.Project.runTarget(Project.java:898)
    <br>        at org.apache.tools.ant.Project.executeTarget(Project.java:536)
    <br>        at org.apache.tools.ant.Project.executeTargets(Project.java:510)
    <br>        at org.apache.tools.ant.Main.runBuild(Main.java:421)
    <br>        at org.apache.tools.ant.Main.main(Main.java:149)
    <p>BUILD SUCCESSFUL
    <p>Total time: 34 seconds
    <p>C:\test>
    <br>-----------------------------------------------------------------</blockquote>
    </html>

  • Are the WLS 9.1 Web Service Ant Tasks ready for prime time?

    I am trying to create a Proof of Concept (POC) for Enterprise and B2B Services at Wendy's Int'l, Inc.
    As part of this POC, I created a WSDL for an in-house service and then used the wsdlc and jwsc Ant Tasks to translate this WSDL to Java classes and ultimately (I hoped) a deployable services.
    In this document, I describe the issues I encountered setting up what I consider to be a simple POC.
    I'll try to attach my WSDL file and build.xml so you can follow along.
    I'll also try to attach my CSS file so you can compare how the generated WSDL appears in the Browser to the way I want it to appear.
    If attachments are not allowed on these forums, then I will wait and see if there is interest in those documents before I paste them under this topic.
    Some preliminary information about my environment.
    Environment:
         Windows XP Pro SP2
         WebLogic 9.1
         Java 1.5.0_04
    Service Name:
         AppRelease
    Note: If I modify my WSDL (perhaps to add a new Operation or to change the definition of an element) and run wsdlc again, the AppReleaseSOAPPortImpl.java file is overwritten For this reason, I implemented my service logic in a class called AppReleaseServiceImple.java.
    Now, for the issues.
    1.     Bug:
    In the WSDL generated by wsdlc, the wsdl:part child of the wsdl:message tag is erroneously prefixed with a colon.
    This occurs whether or not I specify a prefix for the http://schemas.xmlsoap.org/wsdl/ namespace.
    Work around: Extract the wsdl from the jar file, fix it and add it back into the jar.
    2.     Bug:
    In the WSDL generated by wsdlc, the wsdl:input and wsdl:output children of the wsdl:operation child of wsdl:portType tag are erroneously prefixed with a colon. Like 1 above, this occurs whether or not I specify a prefix for the http://schemas.xmlsoap.org/wsdl/ namespace.
    Work around: Extract the wsdl from the jar file, fix it and add it back into the jar.
    The error message generated by Bugs 1 and 2 is not helpful in diagnosing the problem:
    [jwsc] Error at line:46 col:7 ':' expected [?! -- [CDATA[ ]
    3.     Bug:
    In the WSDL generated by wsdlc, the documentation elements have all of my html elements stripped out, as well as my xhtml and wsdl namespace references. This completely negates one of the best features of the documentation tag, being able to present the WSDL in a browser as a nicely formatted, human friendly document which is also the underlying WSDL that can be viewed when the person views the source document.
    I label this as a bug because it greatly reduces the functionality of the resulting WSDL.
    4.     Annoyance:
    The WSDL generated by wsdlc has all of my comments stripped out, except the comments in the xsd:schema section of the wsdl:types element. I would prefer that all my comments be left in the WSDL, but if comments must be stripped out then I think all of the comments should be stripped out.
    5.     Annoyance:
    The WSDL generated by wsdlc has my CSS specification stripped.
    Work around: I don’t know if adding the CSS back will do any good because I have not yet created a deployable service (see the last issue below).
    6.     Annoyance:
    The WSDL generated by wsdlc has different namespace prefixes than the ones I specified for my application's namespace and for the http://schemas.xmlsoap.org/wsdl/soap/ namespace.
    Work around: Perform a find/replace on namespace prefixes "s0" and "s1" to return them to my prefered values.
    Another thing I can do at this point is simply replace the generated WSDL in the jar file with my original WSDL. This would address issues 1 thru 6 above.
    7.     Annoyance:
    The java source files created by wsdlc are put into a jar file. This makes it annoying when working within a traditional IDE like Eclipse because there is no way to reference the source files within the jar as working source.
    Work around: Extract the source files from the jar and identify the resulting directory structure as part of the source structure of the project.
    8.     Bug:
    The jwsc task complains if the same parameter name is used in multiple operations. I received the following Errors from jwsc:
    [jwsc] C:\IDE\workspace\Acre-WL9.1\AppReleaseSOAPPort.java 0:0
    [jwsc] [ERROR] - Parameter element "{http://acre.services.wendys.com/AppRelease/}garRequest" is not unique across document/literal bare WebService.
    Since the operation names are unique, I see no reason to also require uniqueness in the parameter names used by those operations.
    Work around: Use unique element names for the input parameters of the services operations.
    9.     Bug:
    Once items 1, 2 and 8 above are taken care of, jwsc fails with the following error:
    java.lang.AssertionError: java.lang.ClassNotFoundException: weblogic.j2ee.descriptor.ApplicationBeanImpl
    This seems to be due to the weblogic.jar file not being in the System Classpath.
    However, I should note that when I set verbose="on" and debug="on" in the jwsc ant task, there was a message from the task which stated "[jwsc] [search path for class files: [big freakin’ jar list]". In the big freakin’ jar list, I did find weblogic.jar and weblogic.jar has the required ApplicationBeanImpl. This indicates to me that the jwsc task does not fully honor either its classpathref attribute, nor an embedded classpath element.
    Work around: Make sure the weblogic.jar is in the System Classpath.
    10.     Bug:
    I fixed bug #9 by running a setDomainEnv script and then ran my ant task. This time I received the following output:
    ant build-serviceBuildfile: build.xml
    build-service:
    [jwsc] 1 JWS files will be processed.
    [jwsc] Processing JWS: C:\IDE\workspace\Acre-WL9.1\src\com\wendys\services\acre\AppReleaseServiceImpl.java
    [jwsc] JWS: C:\IDE\workspace\Acre-WL9.1\src\com\wendys\services\acre\AppReleaseServiceImpl.java Validated.
    [AntUtil.deleteDir] Deleting directory <some temporary directory>
    BUILD FAILED
    java.lang.ExceptionInInitializerError
    At this point, I am completely stymied about how to proceed.
    I wonder what new issues await once this 10th issue is addressed.
    Really, is this tool set ready for prime time?

    <i>Sorry to hear you are having so many issues with using the WLS 9.1 web service Ant tasks, inside of Eclipse.
    I generally create a User Library for the couple weblogic jars needed, and use it (the User Library) in my Eclipse projects that I create JWSes in.</i><br>
    I also have a separate WebLogic Library in Eclipse (actually 2 libraries since I work with WL 8.1 and now WL 9.1). As you may know, one of the long-standing issues with the Ant integration within Eclipse is the fact that Ant, being an External Tool, does not receive the Project-specific Paths/Libraries. However, since most Java-relevant Ant tasks can take classpath and classpathref attributes, this is usually not an issue. In the case of the BEA-supplied wsdlc Ant task, it is apparent from the verbose/debug console output that wsdlc can see the jars in its classpathref, but it ignores those references when resolving class references and instead only uses the system classpath.
    <p>
    <i>I've only needed the weblogic.jar and xbean.jar, not all the ones you mentioned in an earlier thread of this post.</i><br>
    I have not tried to winnow down exactly which jars are required. I simply included all the jars that exist and were added to the system classpath by the setDomainEnv.bat file created by WebLogic 9.1.
    <p>
    <i>Afterwards, I create an Ant Builder to build the JWS Web Service EAR, as opposed to fiddlin' with Eclipse.</i><br>
    I too use Ant to build my deployable archives. Eclipse is simply my IDE of choice. I validated that all the issues I listed occurred when running Ant from the command line.
    <p>
    <i>If you are interested in how I do it, send me an e-mail (to [email protected]), and I'll send you a zip of one of these JWS projects. The build.xml script for the project, takes care of a lot of the "annoyances" you mentioned, one of which I think is not accurate. I have never had a situation where the wsdlc Ant task "overwrote" my XXXImpl.java file..</i><br>
    Since I'm doing a POC to determine how we want to proceed with developing Web Services and an SOA in general, I tried to perform the same tasks using Axis 2 1.0, the WebLogic 9.1 tools, and XFire 1.1. Overwriting the Impl class is a common failing in the tools which take a WSDL and create Java source files for all three frameworks.
    <p>
    Try my scenario. Add another operation to an existing WSDL, and run the wsdlc Ant Task. The old IMPL class will be over-written.
    <p>
    Because of this, I have a separate Impl class and I make sure that all its methods and annotations match the methods and annotations in the Skeleton Impl class created by wsdlc.
    <p>
    <i>Maybe that's because I use the <exec> Ant task with jar.exe (the xvf options) in my build.xml, to only get what I need out of the .jar/.zip the wsdlc generates. I'm typically only interest in the interface class that my XXXImpl.java file needs to implements, because I use XMLBeans for the input args (and return values) of my web service operations.</i><br>
    Perhaps. I am not using XMLBeans in any of the three frameworks because the resulting service seems to be lighter-weight in all three frameworks if XMLBeans is not used. I'm sure there will be scenarios where XMLBeans is preferred, but I have not encountered that case in this POC.
    <p>
    <i>Regards,
    Mike Wooten</i>
    Thanks for the follow-up.
    Mike McAngus

Maybe you are looking for

  • Double effect of excise duty

    Dear Experts,              I need some  suggestion from you relating to EXCISE. While making Excise Invoice of any rejection, excise duty on the same gets booked in G/L immediately after making Excise Invoice thru J1IS but the same doesnu2019t get up

  • Custom icon in Sybase Unwired Workspace 2.1.3

    Hi All, I want to add my own custom icon for my application in Sybase Unwired Workspace 2.1.3. As in sybase , there are few standard icon are available as shown below( Client icon:we can choose from the drop down). This icon comes in the front of app

  • Inserting into Table-in-Table after re-execution the Outer Table query

    Hi Gurus, I have a problem with inserting into Table-in-Table after re-execution the Outer Table query: The problem: I have two tables; both tables are based on VO; tables have a VL between them; The Inner Table is hidden when page lode. I'm executin

  • Error while importing XI Content for Software compnent version

    Hello All We have Installed XI system and working on Post Installation Activities. As per the Installation Guide We are trying to import XI Content for Software Component version in to the Integration Builder, In the integration builder , when we sel

  • Need Java Code or Program to compare 2 XML files ???

    Hi All, I need Any java code snippet to compare 2 XML files? Please help me.. Thanks, J.Kathir