WSDL/client-stub generation without EJBs ?

My WL7 application invokes methods on external subscriber
web-apps. I need to provide WSDLs for these external apps, since
they'll be implemented by our customers.
Currently, I create 'dummy' EJBs, then create .ears out of it,
run 'servicegen' to create a dummy webservice, then run
'clientgen' to create the WSDLs and the client stub classes
that I'll finally use. I'd like to avoid some of the above
steps. Ideally, I'd just create the appropriate Java interface
classes, then use some tool to create the WSDL and the
client-stub classes. Is this possible ?
-john

Hi John,
Have you considered using a WSDL generation GUI, such as
http://www.omniopera.com/omniopera.html
Bruce
BTW, you do realize that when a webservice is deployed on WLS v7, the
WSDL is available to anyone using
http://<host>:<port>/<context_url>/<webservice>?WSDL
john wrote:
Bruce, I'm not sure how I would use those other tasks to obtain
what I want. AFAIK, the only way to generate a WSDL for a service
is to use the 'clientgen' task. And the clientgen task requires
the actual webservice implementation in the form of a .ear
file.
In my case, I need to create WSDLs which I then pass on to
my customers, for them to implement and host. Currently, to do
this I have to myself implement the desired dummy webservice
and then use clientgen to obtain the WSDL (along with the
stubs etc ..)
thanx
-john
Bruce Stephens <[email protected]> wrote:
Hi John,
In addition to the servicegen and clientgen ant tasks there are now
several other narrowly focused ant tasks such as autotype, and
source2wsdd. Check out the documentation:
http://edocs.bea.com/wls/docs70/webserv/assemble.html#1011066
Hope this helps,
Bruce
john wrote:
My WL7 application invokes methods on external subscriber
web-apps. I need to provide WSDLs for these external apps, since
they'll be implemented by our customers.
Currently, I create 'dummy' EJBs, then create .ears out of it,
run 'servicegen' to create a dummy webservice, then run
'clientgen' to create the WSDLs and the client stub classes
that I'll finally use. I'd like to avoid some of the above
steps. Ideally, I'd just create the appropriate Java interface
classes, then use some tool to create the WSDL and the
client-stub classes. Is this possible ?
-john

Similar Messages

  • C++ Client stub generation plans?

    I have a feeling I have asked this question before:
    Are there any plans afoot to release a C++ client stub generator for WSDL? Having
    spent the last week getting one to work with WSDL, I can tell you there is a market
    there - most of the currently available ones are a bit ugly.
    I imagine that since you have the WSDL parsing engine already there, it would be
    a simple matter of plugging in a different emitter that would turn out C++ instead
    of Java.
    Regards,
    Nick

    In particular, there is a lack of pre-.net C++ soap implementations.
    The MS SOAP is poor (its heavy on COM). The RogueWave one is in alpha status. The
    WASP stuff is rather ugly - lots of macros and little use of standard C++....
    Its a Pity. If Weblogic is positioned as an integration platform, it needs to start
    to consider non-java languages. C++ is one particular legacy language that is important
    to support.. I think.
    -Nick
    "manoj cheenath" <[email protected]> wrote:
    WLS 7.0 can not generate C++ stubs. I dont think this is a planned feature
    for the next release. There are many C++ impls (.net, ms soap toolkit,
    roguewave, ...)
    regards,
    -manoj
    "Nick Minutello" <[email protected]> wrote
    in message news:[email protected]..
    I have a feeling I have asked this question before:
    Are there any plans afoot to release a C++ client stub generator for WSDL?Having
    spent the last week getting one to work with WSDL, I can tell you thereis
    a market
    there - most of the currently available ones are a bit ugly.
    I imagine that since you have the WSDL parsing engine already there, itwould be
    a simple matter of plugging in a different emitter that would turn outC++
    instead
    of Java.
    Regards,
    Nick

  • Web service client stubs generation

    Hi,
    I try to generated model for WebDynpro application based on Web service (deprecated). WSDL file is valid. Stub classes generation is completed with compilation error. I found that the generator builds strange method for CMapLayerField complex type. There is setter with java.util.List param for MapLayer field but no one exists for Metafields field. Why for? Metafields field has the same cardinality as MapLayer one. Please, take me advance. I don't understand generation mechanism. I tried Axis2 and no problem was. How to fix this problem? How can I use Axis2 WSDL2Java generator instead of SAP Schema to Java generator?
    The problem is below described in details. Compilation failed due to type cast error. The error message is:
    The method setMapLayer(CMapLayer) in the type CMapLayerField is not applicable for the arguments (CMapLayer[])
    Below I give some scrap from WSDL and generated Java class.
    WSDL
    ==============
          <s:complexType name="CMapLayerField">
            <s:complexContent mixed="false">
              <s:extension base="tns:CTable">
                <s:sequence>
                  <s:element minOccurs="0" maxOccurs="1" name="Metafields" type="tns:CMetafields" />
                  <s:element minOccurs="0" maxOccurs="1" name="MapLayer" type="tns:CMapLayer" />
                  <s:element minOccurs="1" maxOccurs="1" name="MapLayerFieldIsName" type="s:int" />
                </s:sequence>
              </s:extension>
            </s:complexContent>
          </s:complexType>
    Generated API class for CMapLayerField type
    ==============================
    package com.test.model;
    public class ComplexType_CMapLayerField
    private com.test.model.proxies.types.CMapLayerField originalBean;
    //skipped
    private com.test.model.ComplexType_CMetafields metafields;
    /** sets the JavaWrapper in the relationship**/
    public void setMetafields(com.test.model.ComplexType_CMetafields arg)
         this.metafields = arg;           
    sets the original bean in the relationship
      public void setMetafields(com.test.model.proxies.types.CMetafields origBean)
         if(this.metafields == null)
              this.metafields = new com.test.model.ComplexType_CMetafields ();
         this.metafields.setOriginalBean(origBean);           
    private java.util.List _mapLayer = null;
    public void setMapLayer (java.util.List list)
         com.test.model.proxies.types.CMapLayer[] array = new com.test.model.proxies.types.CMapLayer[list.size()];
         for(int i=0;i<list.size();i++)
              com.test.model.ComplexType_CMapLayer item = (com.test.model.ComplexType_CMapLayer)list.get(i);
               array<i> = item.getOriginalBean();
         getOriginalBean().setMapLayer(array);
         this._mapLayer = list;
    public void setMapLayer (com.test.model.proxies.types.CMapLayer[] args)
         if(_mapLayer == null) _mapLayer = new java.util.ArrayList();
         if (args == null ) return ;
         for(int i=0;i<args.length;i++)
              com.test.model.ComplexType_CMapLayer wrapper = new com.test.model.ComplexType_CMapLayer ();
              wrapper.setOriginalBean(args<i>);
              _mapLayer.add(wrapper);     
    //skipped
    Generated stub class for CMapLayerField type
    ===================================
    package com.test.model.proxies.types;
    public  class CMapLayerField extends com.test.model.proxies.types.CTable {
      //some line were skipped
      private com.test.model.proxies.types.CMetafields fMetafields;
      public void setMetafields(com.test.model.proxies.types.CMetafields _Metafields) {
        this._f_Metafields = _Metafields;
        this._f_hasMetafields = true;
      private com.test.model.proxies.types.CMapLayer fMapLayer;
      private boolean fhasMapLayer;
      public void setMapLayer(com.test.model.proxies.types.CMapLayer _MapLayer) {
        this._f_MapLayer = _MapLayer;
        this._f_hasMapLayer = true;

    Obsolete

  • How to create client stub while deployign EAR on Oracle Application Server

    Hi,
    I have deployed an EJB on Oracle Application Server 10g 10.1.2.0.2. And i want to call this ejb from other app server using ejb client. For that i need client stub.
    Is there any way I can create client stub while deploying EJB on the OC4J?
    I am sure there will be some options.
    Thanks and Regards
    AT

    Amit,
    It depends on which transport protocol you use to transmit both the client requests and the server responses: either IIOP or ORMI.
    Here's how it works: if you've chosen the IIOP protocol, the client stubs are generated at deploy time and stored in the iiopClient.jar file. Once created, you append this file to your java client's classpath.
    Now, if your choice is ORMI, the client stubs are created on demand by the container, so there is no need to append any jar file to the client classpath.
    Consult the OC4J Services Guide in the Official Oracle Application Server docs for further inforrmation on this topic, specially the "Remote Method Invocation" chapter.
    RB

  • Is outside-in without EJB's possible?

    Is it possible to create a web service from a wsdl (outside-in approach) without EJB's involved. in CE7.1
    Regards
    ABS

    Yes, you can but manually. There is no such easy tool as for EJBs in NetWever Developer Studio(NWDS).
    Using the the  NWDS  you can generate automaticaly Outside-In  web service sceletons but only with EJB endpoints.
    Maybe you have already read that page:
    http://help.sap.com/saphelp_nwce10/helpdata/en/46/7f2fef88190ad3e10000000a11466f/content.htm
    But if you need a servlet-based web service  and you want to start from the WSDL, you can do it manually by creating a pure java class in web project and than adding the annotations  with values corresponding to the one from the WSDL. In this case you will need some more knowlage in web services area.
    I hope that explainations help you.
    Regards,
    Yulie.

  • Stub Generation - WSDL contains extensions

    Hey,
    I try to generate stubs with the wireless toolkit.
    The problem is that the WSDL contains extension tags like this:
    <xsd:complexType name="BusinessTransactionDocumentID">
        <xsd:simpleContent>
            <xsd:extension base="BusinessTransactionDocumentID.Content">
                <xsd:attribute name="schemeID">
                    <xsd:simpleType>
                        <xsd:restriction base="xsd:token">
                            <xsd:maxLength value="60"/>
                            <xsd:minLength value="1"/>
                        </xsd:restriction>
                    </xsd:simpleType>
                </xsd:attribute>
                <xsd:attribute name="schemeAgencyID">
                    <xsd:simpleType>
                        <xsd:restriction base="xsd:token">
                            <xsd:maxLength value="60"/>
                            <xsd:minLength value="1"/>
                        </xsd:restriction>
                   </xsd:simpleType>
               </xsd:attribute>
               <xsd:attribute name="schemeAgencySchemeAgencyID" type="AgencyIdentificationCode"/>
           </xsd:extension>
       </xsd:simpleContent>
    </xsd:complexType>I tried to replace the extension somehow but I couldn't find a way, that the request looks the same way as it does when I use my usual proxies.
    Is there a way that the stub generator can handle the extensions? How can I replace them, so it would work?
    Thanks in advance
    Regards
    Tina

    Hi John,
    Have you considered using a WSDL generation GUI, such as
    http://www.omniopera.com/omniopera.html
    Bruce
    BTW, you do realize that when a webservice is deployed on WLS v7, the
    WSDL is available to anyone using
    http://<host>:<port>/<context_url>/<webservice>?WSDL
    john wrote:
    Bruce, I'm not sure how I would use those other tasks to obtain
    what I want. AFAIK, the only way to generate a WSDL for a service
    is to use the 'clientgen' task. And the clientgen task requires
    the actual webservice implementation in the form of a .ear
    file.
    In my case, I need to create WSDLs which I then pass on to
    my customers, for them to implement and host. Currently, to do
    this I have to myself implement the desired dummy webservice
    and then use clientgen to obtain the WSDL (along with the
    stubs etc ..)
    thanx
    -john
    Bruce Stephens <[email protected]> wrote:
    Hi John,
    In addition to the servicegen and clientgen ant tasks there are now
    several other narrowly focused ant tasks such as autotype, and
    source2wsdd. Check out the documentation:
    http://edocs.bea.com/wls/docs70/webserv/assemble.html#1011066
    Hope this helps,
    Bruce
    john wrote:
    My WL7 application invokes methods on external subscriber
    web-apps. I need to provide WSDLs for these external apps, since
    they'll be implemented by our customers.
    Currently, I create 'dummy' EJBs, then create .ears out of it,
    run 'servicegen' to create a dummy webservice, then run
    'clientgen' to create the WSDLs and the client stub classes
    that I'll finally use. I'd like to avoid some of the above
    steps. Ideally, I'd just create the appropriate Java interface
    classes, then use some tool to create the WSDL and the
    client-stub classes. Is this possible ?
    -john

  • Clientgen in WL 81 giving problems for stub generation from WL91 WSDL

    Hi,
    I am very new to this forum and new to Weblogic too.
    Here is my problem. I generated a webservice from a Stateless Session bean using annotation in WebLogic 91. Used the "jwsc"/"wldeploy" to generate and deploy the webservice. Also generated the client stubs using "clientgen" in weblogic 91.
    Created a small web application using a single jsp and servlet (the servlet is where i invoke the service).
    Everything works fine till its weblogic 91.
    Now the problem. I need to make the jsp work from Weblogic 81. So I am trying to create the client stubs from the service endpoint WSDL on WebLogic 91 by using the deployed webservice URL.
    The clientgen in WL 81 is complaining that the "parameters" is already defined (Please see the error below".
    I would assume that BEA would have tested this scenario as it should be a no-brainer. So why does the cleintgen in WL 81 complain. Is there any other step or way that I am missing. I have tried all sorts of things before posting to this forum (like 1. generating the stubs using WSDL2JAVA using axis -- WebLogic 81 gives a null pointer exception 2. generating the client stubs using "clientgen" in WL 91 and trying to compile using the jdk 1.4 and using in WL 81 -- complains that the couldnot find something like jax-rpc._._.ServiceImpl
    Will be realy helpful if someone who had this kind of experience of someone from BEA can help me a little bit.
    Thanks in advance to all for your time.
    ERROR WHILE using CLIENGEN
    build-client:
    [clientgen] Generating client jar for http://localhost:7001/webservice/MAC/Metho
    dsAccessControl?WSDL ...
    [clientgen] WARNING: Map ['http://elexnet.bah.com/methods']:ArrayOfint_literal i
    ncompliantly with JAX-RPC, mapping to a Java array of .int
    [clientgen] WARNING: Map ['http://elexnet.bah.com/methods']:ArrayOfMethodUserTO_
    literal incompliantly with JAX-RPC, mapping to a Java array of com.bah.elexnet.s
    erver.to.MethodUserTO
    [clientgen] C:\Documents and Settings\525328.ROCKIT\Local Settings\Temp\test.jar
    198043065\com\bah\elexnet\methods\client\accesscontrol\MACSPortType.java:15: par
    ameters is already defined in unArchiveUser(com.bah.elexnet.methods.UnArchiveUse
    r,com.bah.elexnet.methods.holders.UnArchiveUserResponseHolder)
    [clientgen] public void unArchiveUser(com.bah.elexnet.methods.UnArchiveUser pa
    rameters, com.bah.elexnet.methods.holders.UnArchiveUserResponseHolder parameters
    [clientgen]
    ^
    [clientgen] C:\Documents and Settings\525328.ROCKIT\Local Settings\Temp\test.jar
    198043065\com\bah\elexnet\methods\client\accesscontrol\MACSPortType.java:21: par
    ameters is already defined in editUserRoles(com.bah.elexnet.methods.EditUserRole
    s,com.bah.elexnet.methods.holders.EditUserRolesResponseHolder)
    [clientgen] public void editUserRoles(com.bah.elexnet.methods.EditUserRoles pa
    rameters, com.bah.elexnet.methods.holders.EditUserRolesResponseHolder parameters
    [clientgen]
    ^
    [clientgen] C:\Documents and Settings\525328.ROCKIT\Local Settings\Temp\test.jar
    198043065\com\bah\elexnet\methods\client\accesscontrol\MACSPortType.java:27: par
    ameters is already defined in getUsers(com.bah.elexnet.methods.GetUsers,com.bah.
    elexnet.methods.holders.GetUsersResponseHolder)
    [clientgen] public void getUsers(com.bah.elexnet.methods.GetUsers parameters,
    com.bah.elexnet.methods.holders.GetUsersResponseHolder parameters)
    [clientgen]
    ^
    [clientgen] C:\Documents and Settings\525328.ROCKIT\Local Settings\Temp\test.jar
    198043065\com\bah\elexnet\methods\client\accesscontrol\MACSPortType.java:33: par
    ameters is already defined in addUserRoles(com.bah.elexnet.methods.AddUserRoles,
    com.bah.elexnet.methods.holders.AddUserRolesResponseHolder)
    [clientgen] public void addUserRoles(com.bah.elexnet.methods.AddUserRoles para
    meters, com.bah.elexnet.methods.holders.AddUserRolesResponseHolder parameters)
    [clientgen]
    ^
    [clientgen] C:\Documents and Settings\525328.ROCKIT\Local Settings\Temp\test.jar
    198043065\com\bah\elexnet\methods\client\accesscontrol\MACSPortType.java:39: par
    ameters is already defined in archiveUser(com.bah.elexnet.methods.ArchiveUser,co
    m.bah.elexnet.methods.holders.ArchiveUserResponseHolder)
    [clientgen] public void archiveUser(com.bah.elexnet.methods.ArchiveUser parame
    ters, com.bah.elexnet.methods.holders.ArchiveUserResponseHolder parameters)
    [clientgen]
    ^
    [clientgen] C:\Documents and Settings\525328.ROCKIT\Local Settings\Temp\test.jar
    198043065\com\bah\elexnet\methods\client\accesscontrol\MACSPortType.java:45: par
    ameters is already defined in changeSystemPassword(com.bah.elexnet.methods.Chang
    eSystemPassword,com.bah.elexnet.methods.holders.ChangeSystemPasswordResponseHold
    er)
    [clientgen] public void changeSystemPassword(com.bah.elexnet.methods.ChangeSys
    temPassword parameters, com.bah.elexnet.methods.holders.ChangeSystemPasswordResp
    onseHolder parameters)
    [clientgen]
    ^
    [clientgen] C:\Documents and Settings\525328.ROCKIT\Local Settings\Temp\test.jar
    198043065\com\bah\elexnet\methods\client\accesscontrol\MACSPortType.java:51: par
    ameters is already defined in deleteUser(com.bah.elexnet.methods.DeleteUser,com.
    bah.elexnet.methods.holders.DeleteUserResponseHolder)
    [clientgen] public void deleteUser(com.bah.elexnet.methods.DeleteUser paramete
    rs, com.bah.elexnet.methods.holders.DeleteUserResponseHolder parameters)
    [clientgen]
    ^
    [clientgen] C:\Documents and Settings\525328.ROCKIT\Local Settings\Temp\test.jar
    198043065\com\bah\elexnet\methods\client\accesscontrol\MACSPortType.java:57: par
    ameters is already defined in getUserRoles(com.bah.elexnet.methods.GetUserRoles,
    com.bah.elexnet.methods.holders.GetUserRolesResponseHolder)
    [clientgen] public void getUserRoles(com.bah.elexnet.methods.GetUserRoles para
    meters, com.bah.elexnet.methods.holders.GetUserRolesResponseHolder parameters)
    [clientgen]
    ^
    [clientgen] C:\Documents and Settings\525328.ROCKIT\Local Settings\Temp\test.jar
    198043065\com\bah\elexnet\methods\client\accesscontrol\MACSPortType_Stub.java:20
    : parameters is already defined in unArchiveUser(com.bah.elexnet.methods.UnArchi
    veUser,com.bah.elexnet.methods.holders.UnArchiveUserResponseHolder)
    [clientgen] public void unArchiveUser(com.bah.elexnet.methods.UnArchiveUser pa
    rameters, com.bah.elexnet.methods.holders.UnArchiveUserResponseHolder parameters
    [clientgen]
    ^
    [clientgen] C:\Documents and Settings\525328.ROCKIT\Local Settings\Temp\test.jar
    198043065\com\bah\elexnet\methods\client\accesscontrol\MACSPortType_Stub.java:39
    : parameters is already defined in editUserRoles(com.bah.elexnet.methods.EditUse
    rRoles,com.bah.elexnet.methods.holders.EditUserRolesResponseHolder)
    [clientgen] public void editUserRoles(com.bah.elexnet.methods.EditUserRoles pa
    rameters, com.bah.elexnet.methods.holders.EditUserRolesResponseHolder parameters
    [clientgen]
    ^
    [clientgen] C:\Documents and Settings\525328.ROCKIT\Local Settings\Temp\test.jar
    198043065\com\bah\elexnet\methods\client\accesscontrol\MACSPortType_Stub.java:58
    : parameters is already defined in getUsers(com.bah.elexnet.methods.GetUsers,com
    .bah.elexnet.methods.holders.GetUsersResponseHolder)
    [clientgen] public void getUsers(com.bah.elexnet.methods.GetUsers parameters,
    com.bah.elexnet.methods.holders.GetUsersResponseHolder parameters)
    [clientgen]
    ^
    [clientgen] C:\Documents and Settings\525328.ROCKIT\Local Settings\Temp\test.jar
    198043065\com\bah\elexnet\methods\client\accesscontrol\MACSPortType_Stub.java:77
    : parameters is already defined in addUserRoles(com.bah.elexnet.methods.AddUserR
    oles,com.bah.elexnet.methods.holders.AddUserRolesResponseHolder)
    [clientgen] public void addUserRoles(com.bah.elexnet.methods.AddUserRoles para
    meters, com.bah.elexnet.methods.holders.AddUserRolesResponseHolder parameters)
    [clientgen]
    ^
    [clientgen] C:\Documents and Settings\525328.ROCKIT\Local Settings\Temp\test.jar
    198043065\com\bah\elexnet\methods\client\accesscontrol\MACSPortType_Stub.java:96
    : parameters is already defined in archiveUser(com.bah.elexnet.methods.ArchiveUs
    er,com.bah.elexnet.methods.holders.ArchiveUserResponseHolder)
    [clientgen] public void archiveUser(com.bah.elexnet.methods.ArchiveUser parame
    ters, com.bah.elexnet.methods.holders.ArchiveUserResponseHolder parameters)
    [clientgen]
    ^
    [clientgen] C:\Documents and Settings\525328.ROCKIT\Local Settings\Temp\test.jar
    198043065\com\bah\elexnet\methods\client\accesscontrol\MACSPortType_Stub.java:11
    5: parameters is already defined in changeSystemPassword(com.bah.elexnet.methods
    .ChangeSystemPassword,com.bah.elexnet.methods.holders.ChangeSystemPasswordRespon
    seHolder)
    [clientgen] public void changeSystemPassword(com.bah.elexnet.methods.ChangeSys
    temPassword parameters, com.bah.elexnet.methods.holders.ChangeSystemPasswordResp
    onseHolder parameters)
    [clientgen]
    ^
    [clientgen] C:\Documents and Settings\525328.ROCKIT\Local Settings\Temp\test.jar
    198043065\com\bah\elexnet\methods\client\accesscontrol\MACSPortType_Stub.java:13
    4: parameters is already defined in deleteUser(com.bah.elexnet.methods.DeleteUse
    r,com.bah.elexnet.methods.holders.DeleteUserResponseHolder)
    [clientgen] public void deleteUser(com.bah.elexnet.methods.DeleteUser paramete
    rs, com.bah.elexnet.methods.holders.DeleteUserResponseHolder parameters)
    [clientgen]
    ^
    [clientgen] C:\Documents and Settings\525328.ROCKIT\Local Settings\Temp\test.jar
    198043065\com\bah\elexnet\methods\client\accesscontrol\MACSPortType_Stub.java:15
    3: parameters is already defined in getUserRoles(com.bah.elexnet.methods.GetUser
    Roles,com.bah.elexnet.methods.holders.GetUserRolesResponseHolder)
    [clientgen] public void getUserRoles(com.bah.elexnet.methods.GetUserRoles para
    meters, com.bah.elexnet.methods.holders.GetUserRolesResponseHolder parameters)
    [clientgen]
    ^
    [clientgen] 16 errors
    [clientgen] java.io.IOException: Compiler failed executable.exec
    [clientgen] at weblogic.utils.compiler.CompilerInvoker.compileMaybeExit(Comp
    ilerInvoker.java:470)
    [clientgen] at weblogic.utils.compiler.CompilerInvoker.compile(CompilerInvok
    er.java:328)
    [clientgen] at weblogic.utils.compiler.CompilerInvoker.compile(CompilerInvok
    er.java:336)
    [clientgen] at weblogic.webservice.tools.build.internal.CompilerHelper.compi
    leFiles(CompilerHelper.java:80)
    [clientgen] at weblogic.webservice.tools.build.internal.ClientGenImpl.compil
    eStubs(ClientGenImpl.java:627)
    [clientgen] at weblogic.webservice.tools.build.internal.ClientGenImpl.genera
    teStub(ClientGenImpl.java:572)
    [clientgen] at weblogic.webservice.tools.build.internal.ClientGenImpl.doClie
    ntGenFromWsdl(ClientGenImpl.java:409)
    [clientgen] at weblogic.webservice.tools.build.internal.ClientGenImpl.run(Cl
    ientGenImpl.java:340)
    [clientgen] at weblogic.ant.taskdefs.webservices.clientgen.ClientGenTask.doC
    lientGen(ClientGenTask.java:351)
    [clientgen] at weblogic.ant.taskdefs.webservices.clientgen.ClientGenTask.exe
    cute(ClientGenTask.java:208)
    [clientgen] at org.apache.tools.ant.Task.perform(Task.java:341)
    [clientgen] at org.apache.tools.ant.Target.execute(Target.java:309)
    [clientgen] at org.apache.tools.ant.Target.performTasks(Target.java:336)
    [clientgen] at org.apache.tools.ant.Project.executeTarget(Project.java:1339)
    [clientgen] at org.apache.tools.ant.Project.executeTargets(Project.java:1255
    [clientgen] at org.apache.tools.ant.Main.runBuild(Main.java:609)
    [clientgen] at org.apache.tools.ant.Main.start(Main.java:196)
    [clientgen] at org.apache.tools.ant.Main.main(Main.java:235)
    BUILD FAILED
    file:C:/Projects/OtherProjects/WL/soaws/build/build.xml:122: weblogic.webservice
    .tools.build.WSBuildException: Compiler failed executable.exec - with nested exc
    eption:
    [java.io.IOException: Compiler failed executable.exec]

    did you get a solution for this issue. I am trying to generate a stub to connect to a webservice i created by exposing my stateless session EJB as a web service, using annotations. I want to create a client stub using the clientgen from weblogic 81. I am unable to do this, do you have any solution to this.

  • Generatin client stubs from wsdl file

    i user wsimport to generate the client stubs
    look like i am missing some files
    like the service port/stub..
    please help

    i user wsimport to generate the client stubs
    look like i am missing some files
    like the service port/stub..wsimport is run on a WSDL and it generates all required stubs for you. What is the exact nature of your problem ? more details please

  • How the client stub is generated from the wsdl file ?

    I want to know how the client stub is generated from the wsdl file ?
    how the client accesses the methods in the wsdl fie ?
    thanks alot .

    there are several ways to generate the stubs from a wsdl.
    if you're using jax-ws, there is a netbeans tutorial creating web services. you found this on http://www.netbeans.org/kb/trails/web.html.
    if you're using axis as your framework, i think this would be a nice introduction of it. link : http://www.eli.sdsu.edu/courses/spring03/cs683/notes/AXIS/AXIS.html#Heading4

  • Generate client stubs for EJBs? Is this correct?

    Hi,
         Third time I write this... maybe it gets actually posted now...
    I'm using Sun's appserver (edition 8) to learn EJBs. I have a small app with 2 EJBs runing on the server and I intend to test them using junit test cases running from Eclipse (as a normal java program, no client container or whatsoever). I realized that in order connect my client app to the remote homes on the server I need to have the client stubs. OK. I saw that they are actually created when I generate the deployment for a client app. So what I did is open the .jar and copy the stubs to my client app in Eclipse. It works... but I fear is NOT the way to go...
    My questions:
    A) How can I generate ONLY the stubs?
    B) Is it necessary to deploy the EJBs on the server to generate the client stubs to access the remote interfaces?
    Any answers or indications or directions to take are WELCOME :-)
    C) Is what I do correct? I mean, are you guys too writing client apps that do NOT run in the client container? If so, how do you get the stubs? Maybe my approach to developing EJBs is not correct?
    Thank you for any answers, comments or indications and directions to take!

    Hi Pablo,
    please give me a hint, i have the same problem in my mind.
    I would like write a simple application with eclipse as a application client. I'm reuse the rmi-iiop-simple sample of application server 8. My steps until now:
    - I have execute the sample full - it works.
    - I have set up a project within eclipse workspace with content of sun's sample code
    - I have chamged the build.xml for reuse -> it works i can create ear and other jars
    - I deploy the ear with web front end of application server -> web app works
    - I start my application in eclipse debug (java-application) -> this goes wrong -> class cast exception by narrow
    Because i would like use the application as application client so i have added the j2ee.jar and the appserv-ext.jar to my classpath.
    At this point i think the application must be run. The appserv-ext.jar and the j2ee.jar should realize the container. But she doesn't !
    Which thing is wrong in my mind?
    Thanks Thomas

  • Where are the client stubs generated

    I am using weblogic 8, so i understand that the client stub is generated by the container when the my ejbs are deployed.
    But where is this jar file created.
    Is there a tool which i can use to generate the .jar file once my ejb is delployed.
    Thank you
    Rahul

    (Found something on this for weblogic 6 ..maybe this holds true for weblogic 8) ..still cant figure out exactly where it creates the stub.. might have to try it out and search BEA_HOME
    WebLogic Server supports the use of ejb-client.jar files.
    The ejb-client.jar contains the home and remote interfaces, the primary key class (as applicable), and the files they reference. WebLogic Server does not add files referenced in your classpath to ejb-client.jar. This enables WebLogic Server to add necessary custom classes to the ejb-client.jar without adding generic classes such as java.lang.String.
    For example, the ShoppingCart remote interface might have a method that returns an Item class. Because this remote interface references this class, and it is located in the ejb-jar file, it will be included in the client jar.
    You configure the creation of an ejb-client.jar file in the bean's ejb-jar.xml deployment descriptor file.When you compile the bean with ejbc, WebLogic Server creates the ejb-client.jar.
    To specify an ejb-client.jar:
    1. Compile the bean's Java classes into a directory, using the javac compiler from the command line.
    2. Add the EJB XML deployment descriptor files to the compiled unit using the guidelines in WebLogic Server EJB Deployment Files.
    3. Edit the ejb-client-jar deployment descriptor in the bean's ejb-jar.xml file, as follows, to specify support for ejb-client.jar:
    <ejb-client-jar>ShoppingCartClient.jar</ejb-client-jar>
    4. Generate the container classes that are used to access the bean using weblogic.ejbc and create the ejb-client.jar using the following command:
    $ java weblogic.ejbc <ShoppingCart.jar>
    Container classes include both the internal representation of the EJB that WebLogic Server uses, as well as implementation of the external interfaces (home, local, and/or remote) that clients use.
    External clients can include the ejb-client.jar in their classpath. Web applications would include the ejb-client.jar in their /lib directory.
    Note: WebLogic Server classloading behavior varies, depending on whether or not the client is stand-alone. Stand-alone clients with access to the ejb-client.jar can load the necessary classes over the network. However, for security reasons, programmatic clients running in a server instance cannot load classes over the network.

  • Wscompile does not seem to be generating a client stub

    When I run the wscompile tool on a WSDL file generated using gSoap the wscompile tool does not generate the client stub. Instead it reports the following errors:
    warning: ignoring port "finsvc": no SOAP address specified
    warning: Service "finsvc" does not contain any usable ports
    The WSDL file and the config file is shown below (please note that the IP address has been changed to 255.255.255.255 in this example but when we ran wscompile it was a valid one):
    <?xml version="1.0" encoding="UTF-8"?>
    <definitions name="finsvc"
    targetNamespace="http://www.xxxxxxxx.com/abcd/finsvc"
    xmlns:tns="http://www.xxxxxxxx.com/abcd/finsvc"
    xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope"
    xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:nsfinsvc="http://www.xxxxxxxx.com/abcd/finsvc"
    xmlns:SOAP="http://schemas.xmlsoap.org/wsdl/soap12/"
    xmlns:MIME="http://schemas.xmlsoap.org/wsdl/mime/"
    xmlns:DIME="http://schemas.xmlsoap.org/ws/2002/04/dime/wsdl/"
    xmlns:WSDL="http://schemas.xmlsoap.org/wsdl/"
    xmlns="http://schemas.xmlsoap.org/wsdl/">
    <types>
    <schema targetNamespace="http://www.xxxxxxxx.com/abcd/finsvc"
    xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope"
    xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:nsfinsvc="http://www.xxxxxxxx.com/abcd/finsvc"
    xmlns="http://www.w3.org/2001/XMLSchema"
    elementFormDefault="unqualified"
    attributeFormDefault="unqualified">
    <import namespace="http://www.w3.org/2003/05/soap-encoding"/>
    <complexType name="getFinStatusRequest">
    <sequence>
    <element name="lswebcmn-dept" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="lswebcmn-opr" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="lswebcmn-pwd" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="lswebcmn-func" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="lswebcmn-action" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="lswebcmn-option" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="lswebcmn-sessid" type="xsd:int" minOccurs="1" maxOccurs="1"/>
    <element name="ltnum" type="xsd:int" minOccurs="1" maxOccurs="1"/>
    </sequence>
    </complexType>
    <complexType name="getFinStatusRspLtdet">
    <sequence>
    <element name="ltnum" type="xsd:int" minOccurs="1" maxOccurs="1"/>
    <element name="ltnum1" type="xsd:int" minOccurs="1" maxOccurs="1"/>
    <element name="ltnum2" type="xsd:int" minOccurs="1" maxOccurs="1"/>
    <element name="ltname" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    </sequence>
    </complexType>
    <complexType name="ArrayOfgetFinStatusRspLtdet">
    <complexContent>
    <restriction base="SOAP-ENC:Array">
    <sequence>
    <element name="item" type="nsfinsvc:getFinStatusRspLtdet" minOccurs="0" maxOccurs="unbounded"/>
    </sequence>
    <attribute ref="SOAP-ENC:arrayType" WSDL:arrayType="nsfinsvc:getFinStatusRspLtdet[]"/>
    </restriction>
    </complexContent>
    </complexType>
    </schema>
    </types>
    <message name="getFinStatus">
    <part name="p-in" type="nsfinsvc:getFinStatusRequest"/>
    </message>
    <message name="getFinStatusRsp">
    <part name="lswebcmn-status" type="xsd:int"/>
    <part name="lswebcmn-statusmsg" type="xsd:string"/>
    <part name="ptrLtdet" type="nsfinsvc:ArrayOfgetFinStatusRspLtdet"/>
    </message>
    <portType name="finsvcPortType">
    <operation name="getFinStatus">
    <documentation>Service definition of function nsfinsvc__getFinStatus</documentation>
    <input message="tns:getFinStatus"/>
    <output message="tns:getFinStatusRsp"/>
    </operation>
    </portType>
    <binding name="finsvc" type="tns:finsvcPortType">
    <SOAP:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="getFinStatus">
    <SOAP:operation style="rpc"/>
    <input>
    <SOAP:body use="encoded" namespace="http://www.xxxxxxxx.com/abcd/finsvc" encodingStyle="http://www.w3.org/2003/05/soap-encoding"/>
    </input>
    <output>
    <SOAP:body use="encoded" namespace="http://www.xxxxxxxx.com/abcd/finsvc" encodingStyle="http://www.w3.org/2003/05/soap-encoding"/>
    </output>
    </operation>
    </binding>
    <service name="finsvc">
    <documentation>gSOAP 2.7.6d generated service definition</documentation>
    <port name="finsvc" binding="tns:finsvc">
    <SOAP:address location="http://255.255.255.255:18083"/>
    </port>
    </service>
    </definitions>
    And the config file used with the wscompile is as below:
    <configuration xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/config">
    <wsdl location="./FINSVC.wsdl"
    packageName="com"/>
    </configuration>

    Thanks for the reply...
    C:\JavaProgFiles\jwsdp-2.0\jaxrpc\bin>wscompile -version
    JAX-RPC Standard Implementation (1.1.3, build R1)
    C:\JavaProgFiles\jwsdp-2.0\jaxrpc\bin>wscompile -verbose config.xml
    error: no mode was specified, please use one of -import/-define/-gen
    Usage: wscompile [options] configuration_file
    Use "wscompile -help" for a detailed description of options.
    C:\JavaProgFiles\jwsdp-2.0\jaxrpc\bin>wscompile -verbose -gen config.xml
    warning: ignoring port "finsvc": no SOAP address specified
    warning: Service "finsvc" does not contain any usable ports
    [ServiceInterfaceGenerator: creating service interface: com.Finsvc]
    [ServiceGenerator: creating service: com.Finsvc_Impl]
    [SerializerRegistryGenerator: creating serializer registry: com.Finsvc_SerializerRegistry]
    Since then we discovered the following:
    When I change the following line in the WSDL it works:
    From:
    xmlns:SOAP="http://schemas.xmlsoap.org/wsdl/soap12/"
    To:
    xmlns:SOAP="http://schemas.xmlsoap.org/wsdl/soap/"
    It looks like wscompile (v1.1.3) works with Soap 1.1 WSDL only.
    When using wsimport instead all seems to work fine provided we change from rpc/encoded to document/literal.
    I guess that's the way to go...for Soap 1.2

  • ABAP Web Service client proxy - generation problems

    Hi!
    I tried to create an ABAP web service client proxy for many different web services -
    for instance some of that listed at <a href="http://www.xmethods.net/">http://www.xmethods.net/</a> .
    Almost on 99% of the WSDLs the client proxy generation failed.
    For istance "<extension> not supported", or "<message...> must have at least one part",... .
    Could anybody tell me what restrictions are to web services you can create a
    ABAP client proxy for ?
    In the SAP Web AS Java Stack there is no problem at all to generate a
    client proxy for almost all of the xmethod-WebServices !
    Is the ABAP Web Service proxy generation for production use ?
    Regards
    Frank Ruggaber

    Resolved through SAP Help. Refer SAP note# 0001403271.

  • Session Facade Pattern without EJB

    All of the session facade pattern examples that I can find are heavily emphasized on EJB. I am planning on implementing a system without EJB's, and am interested in the advantages of using the Session Facade pattern.
    Are there any good examples of using the Facade pattern outside of EJB to build a java server system? If there aren't, is there a better way to implement this type of strategy in a non-EJB system?

    What is the best way to allow the client to
    interact
    with Entity objects, without exposing them. ShouldI
    implement Value objects that are easily serialized
    for transfer across the network?
    If you are not using EJB or a distributed
    architecture, you do not need DTO's or VO's. They
    are an odious construct used to obviate the
    shortcomings of remote method calls over anetwork.
    I strongly disagree.
    They are an obvious and easy model used when the
    following characteristics of a system exist.
    - Different layers.
    - Related data items that are moved throughout the
    layers.
    - Different usage of the related data items by
    different layers.
    Yes, I agree. Note the qualification 'if you are not using a distributed architecture'.
    None of that has anything to do with remote method
    calls over a network. Point of fact the first time I
    used them was in a stand alone application with no
    network traffic except that needed by the database
    driver itself.
    Simply create your domain model objects as POJO's
    s (plain ole Java objects). Persist and retrieve
    your objects via DAO's (data access objects).Your
    service layer (facade) will sit on top of thedomain
    model, encapsulating method calls into logicalunits
    of work.
    And how exactly do you move the customer
    name/customer address from the DAO to the GUI level?I am assuming the dedicated remoting product the OP specifid, Hessian, will handle moving between the tiers, or at least between the controller/view and the business tier.
    - Saish

  • Error on Client WebService generation

    Dear all,
    I am trying to generate a client webservice for Microsoft Exchange Server from the exchange.wsdl.
    While generation I get the following error.
    +Incorrect value: XSD-Namensraum http://schemas.microsoft.com/exchange/services/2006/types nicht verfügbar
    Exception of class CX_SIDL+
    Does anybody knows what this means and how I can fix this to generate the client proxy from the WSDL.
    Best regards
    Roman

    Hi,
    Thanks for sharing the doc.
    I had followed the steps as mentioned in the doc.
    After specifying default mappings(Package name and Root Package Type) , I continued with the creation of Proxy.
    When I click on the Finish button I am getting the mentioned error.
    I can create proxy if I don't mention the default mappings.
    Thakns

Maybe you are looking for

  • Qosmio X505 Crashing

    I have this 3 year old Qosmio of mine that my Uncle bought me for going to College so I could use heavy programs on it and games. Heavy programs work well but since last year I been experiencing issues with it while gaming. It would crash 10secs-10mi

  • Sync problem with itunes 64 bit

    Hi, it's impossible to sync an iPhone 4 with iTunes 10.4 64 bit (sync in one step and in only few seconds but actually it do nothing) and cannot install iTunes 32 bit on windows 7 64 bit. Never had that problem on 32 bit. What can I do?

  • Connect CUP (in GRC 10.0) with ABAP CUA

    Hi , Has anyone a short guide how to connect the CUP in GRC 10.0 with an ABAP CUA? We would like to use the CUP to trigger the CUA for the deployment of the CUP assigned authorisations. Thank you in advance! Br, Frank

  • Ip address to fully qualified domain name

    Dear friends, I am unable to get the correct fully qualified domain name from IP address. Please help. I have already spent more than a day searching for the solution on these forums and on google. So now only option remaining is help from you friend

  • Safari 6 "Save As" help...

    I am getting so annoyed... I know Safari 6 dropped that "Activiy Window" thing, but I never used that.  I don't care about bootleging a YouTube video, but I am very annoyed that I can "Save As" MP4?? Cnet offers a download link to their review videos