Overloaded ejb methods as web service

I implemented an ejb as a web service. The ejb has 4 overloaded methods. When I looked at the generated wsdl, only one signature was exposed as a web service. Is there a way to make all 4 overloaded methods available to the web service ?

Hi Sandy,
The WLS 6.1 docs clear states that method overloading is not supported with WebLogic
Web Services:
http://e-docs.bea.com/wls/docs61/webServices/develop.html#1034539
However, you might be able to simulate something similar by passing a org.w3c.dom.DocumentFragment
to the method. For example,
public org.w3c.dom.DocumentFragment overloadedMethod(org.w3c.dom.DocumentFragment
variableArgs)
This allows you to use the flexibility of XML to provide various input and output
parameters for the method. In the method's implementation, you determine which
arguments have been passed by parsing the variableArgs node. For quasi type safety,
you could use the xsi:type attribute to associate data types with fragment elements.
Note that you will need to use literal XML encoding to do this.
HTH,
Mike Wooten
Sandy <[email protected]> wrote:
I implemented an ejb as a web service. The ejb has 4 overloaded methods.
When I looked at the generated wsdl, only one signature was exposed
as a web service. Is there a way to make all 4 overloaded methods available
to the web service ?

Similar Messages

  • EJB 3.0 Web Service

    Hi!
    I tried to create a Web Service (through wizard) from existing EJB 3.0 Session Bean. Basicly, the wizard just added @WebService annotation to my existing code...
    Now, the problem is that simple methods like:
    @WebMethod
    public String helloWorld() {
      return "Hello World!";
    }works fine. Expect that if I use Local Interface for this Session Bean, the WSDL shows two helloWorld methods (and one is with exclamation icon showing some kind of problem with multiple methods with same name - but it is not true, I have one and the other one is just interface).
    But, when I want to expose my real business service methods like:
    @WebMethod
    public List<Employee> getEmployees() {
      return (List<Employee>)q.getResultList();
    }it doesn't work (the Web Service create wizard finishes ok but service doesn't work)! When I try "Test Web Service" (from Session Bean context-menu) or "Show WSDL for Web Service annotations" the error is thrown (Null pointer exception in WSDL).
    Basically, it looks to me that Web Service cannot use EJB Entities as parameters or results. Is this correct? I saw some examples on EJB 3.0 web services and there are entities routinely used as both input and output parameters.
    Can someone, please, explain me what I'm doing wrong here.
    Thanks in advance,
    Pedja
    P.S. In Web Service wizard, only SOAP 1.1 is enabled. How can I choose SOAP 1.2? And what EJB 3.0 bindings are in same context (SOAP 1.2 or EJB 3.0 bindings?)?

    Hi Frank,
    Most of those problems are resolved (NPE was due to Timestamp field, and two methods with the same name in WSDL because of not choosing to generate SEI in wizard, so the generated WSDL had one method from the Session bean and the other from it's Local interface). But, the errors should DEFINITELY be more descriptive.
    Does the wizard work correctly? I noticed plenty of "bug like" details. For example, if I choose to create asynchronous web service, later when I go to Properties the "Asynchronous Web Service" checkbox isn't checked. Also, the @WebMethod annotations are sometimes generated and sometimes not (even if the method is checked to be exposed).
    I am also getting these exceptions when I create a proxy for the asynchronous web service (I selected "Generate asynchronous methods for all operations"), could be I'm doing something wrong:
    WARNING: The parameter/return type "java.util.concurrent.Future" in the method
    "public abstract java.util.concurrent.Future<?>
    view.proxy.MyAsyncWebService1.queryDepartmentFindAllAsync(javax.xml.ws.AsyncHandler<view.proxy.types.QueryDepartmentFindAllResponse>)"
    is not supported. This method will not be exposed.
    WARNING: The parameter/return type "java.util.concurrent.Future" in the method
    "public abstract java.util.concurrent.Future<?>
    view.proxy.MyAsyncWebService1.returnEmployeeAsync(javax.xml.ws.AsyncHandler<view.proxy.types.ReturnEmployeeResponse>)"
    is not supported. This method will not be exposed.
    Exception in thread "main" java.lang.NullPointerException
         at com.sun.xml.bind.v2.runtime.Coordinator.popCoordinator(Coordinator.java:122)
         at com.sun.xml.bind.v2.runtime.XMLSerializer.close(XMLSerializer.java:823)
         at com.sun.xml.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:310)
         at com.sun.xml.bind.v2.runtime.MarshallerImpl.marshal(MarshallerImpl.java:230)
         at javax.xml.bind.helpers.AbstractMarshallerImpl.marshal(AbstractMarshallerImpl.java:87)
         at oracle.j2ee.ws.common.databinding.runtime.jaxb20.Jaxb20Serializer.serialize(Jaxb20Serializer.java:218)
         at oracle.j2ee.ws.common.databinding.runtime.SerializerBase.serializeSequenceWrapper(SerializerBase.java:80)
         at oracle.j2ee.ws.client.jaxws.SoapRequestorSerializer.populateSoapMessage(SoapRequestorSerializer.java:89)
         at oracle.j2ee.ws.client.jaxws.WsClientProxyInvocationHandler.invoke(WsClientProxyInvocationHandler.java:184)
         at $Proxy11.returnEmployee(Unknown Source)
         at MyAsyncWebService1SoapHttpPortClient.main(MyAsyncWebService1SoapHttpPortClient.java:22)
    Process exited with exit code 1.Can anyone throw some light on this?
    Thanks,
    Pedja

  • EJB exposed as web services

    I am very new to web services.
    I understand that a Stateless bean can be exposed using RPC style web services.
    But I want to know if a stateless session bean can be accessed by EJB client and Web service client (java or non-java) simultaneously. ?
    i.e. 1. Can same bean serve two types of client simultaneously.(java and non-java client)
    2. Does this web service accept complex java object as input parameters. and how?

    Hi Patrik,
    > Exception raised from invocation of public void com.sap.sia.serviceMonitor.ServiceMonitorBean.initPostConstruct() method on bean instance com.sap.sia.serviceMonitor.ServiceMonitorBean@5a8ab489 ... ; nested exception is: java.lang.NullPointerException
    The NPE occurs in the bean code, in the initPostConstruct() method or some other method it calls. Unfortunately, its stack trace is not available above, but you should be able to find it in the defaultTrace file.
    HTH!
    \-- Vladimir

  • Error in calling a method from Web services

    Hai Experts,
                    When i try calling a method in web services from webdyn pro its not being called, i get a error SAOPFAULTCODE: 1 . wat might be the problem? The thing i am working with is tat when a employee try to create a FTR(HCM : Travel), a check has to be done in web services and then allow certain employees to proceed and rest should get a error msg but, i could find all the employees r getting the same error msg . Please resolve this issue.
    Regards and thanks in advance,
    Srija.

    Hello,
    Add the line :
    SET_REPORT_OBJECT_PROPERTY(RAP,REPORT_DESNAME,'test.rdf');
    before
    VRAP:=RUN_REPORT_OBJECT(RAP);
    (Of course, 'test.rdf" is an example, replace it by the name of the reports who want to execute)
    Regards

  • Article written on EJB 3.0 , web services develop n deploy on JBOSS AS

    Dear Friends
    I would like to announce the article written on EJB 3.0 , web services development and deployment on JBOSS AS at the following location http://jamessmithjava.100webcustomers.com/index.html , I think this would help developers to increase interest on JBoss as well as EJBs
    Regards
    James
    [email protected]
    http://tech.groups.yahoo.com/group/james_smithjava

    Dear Friends
    I would like to announce the article written on EJB 3.0 , web services development and deployment on JBOSS AS at the following location http://jamessmithjava.100webcustomers.com/index.html , I think this would help developers to increase interest on JBoss as well as EJBs
    Regards
    James
    [email protected]
    http://tech.groups.yahoo.com/group/james_smithjava

  • Expose AM methods as web services

    Hi All,
    As searched results from the forum, most of posts talking about how to consume WS by generating java file from wsdl. My question is, can we expose an AM method as web services? If answer is yes, may I have some high level steps for following up?
    If we expose AM method as an web service, does that mean we have to pack all FND/OA classes in war file then deploy it into OC4J container?
    We are using an old AS and even don't have standalone OC4J server installed. Even I can install a standalone OC4J but I still don't know how to resolve above question.
    Thanks & Regards,
    KJ

    I have used Glue (http://www.themindelectric.com/products/glue/glue.html) to expose some of our stuff as Web Services. I recently found this on serverside. It's pretty good.
    http://www.theserverside.com/resources/article.jsp?l=Systinet-web-services-part-1
    I believe that the middleware they use can be plugged into IPlanet. There is also an article in the knowledge base on the IPlanet site.
    Jon

  • Expose a class method as web service

    hi ABAPers,
    is it possibile to expose a class method as web service? I would like to write a base class with common code, while derived classes implement specific application logic.
    I have both R/3 6.40 and Netweaver 7.0 kernels, so I'm interested in both.
    thank you.

    No, it is not yet possible.
    You can only create a web service for an RFC Function Module, Function Group or Business Object.
    You may create a RFC FM as a wrapper to your Class methods and create a web service on the RFC FM.
    Regards,
    Naimesh Patel

  • How to overload method in web services ?

    hi all !
    how can i overload a web services method ? , i hear about using javax.xml.ws.RequestWrapper , but when i try to use wsimport , it say : error dupplicate method.
    this is the sample from forum :
    package my.ws;
    import javax.jws.WebMethod;
    import javax.jws.WebParam;
    import javax.jws.WebService;
    import javax.xml.ws.RequestWrapper;
    import javax.xml.ws.ResponseWrapper;
    @WebService
    //(name="HelloWS", serviceName="HelloWSService")
    public class Hello {
          * Web service operation
         @WebMethod
         @RequestWrapper(className = "com.veera.Clac.CalculatorRequest", targetNamespace = "http://Calc.veera.com/")
         @ResponseWrapper(className = "com.veera.Clac.CalculatorResponse", targetNamespace = "http://Calc.veera.com/")
         public int add(@WebParam(name = "a")
         int a, @WebParam(name = "b")
         int b) {
              // TODO implement operation
              return 0;
          * Web service operation
         @WebMethod
         @RequestWrapper(className = "com.veera.Clac.CalculatorOverloadRequest", targetNamespace = "http://CalcOverLoad.veera.com/")
         @ResponseWrapper(className = "com.veera.Clac.CalculatorOverloadResponse", targetNamespace = "http://CalcOverLoad.veera.com/")
         public String add(@WebParam(name = "v")
         String v) {
              // TODO implement operation
              return "Veera";
    }thanks

    Hi, Eric,
    Thank you for your quick reply.
    The web service I am trying to develop is basically a generic Data Access Component to bridge between SQL server and a desktop .Net application. The application will have about 3000 users from WAN, therefore we want to have a server side component to handle connection pooling etc. Because of limitation of current servers, we are asked to develop a Java Web Service, instead of MS WS.
    To make the component more reusable, I am thinking to have methods like this in the service:
    RunQueryReturnRS(String Sql, WebRowSet, rs)
    RunQueryReturnInt(String Sql, int NumRecdImpacted)
    RunStoredProcedureReturnRS(….)
    RunStoredProcedureReturnInt(….)
    ……
    You see, I would like to get whole resultset back to client, including both metadata and data in a format of generic resultset. When I paged through the Sun’s document, finding WebRowSet is claimed to be seariable, and ready for Web Service. I thought if I can use WebRowSet that will save me time to write new classes to hold resultset info and pass back to client.
    Could you please tell me if it is a feasible approach?
    Thank you.
    -Qing

  • EJB 3.0 Web Services - Custom Request/Response Wrappers

    Hi All,
    I'm having an issue using Document Literal Wrapped web services with EJB 3.0. I have declared a service endpoint interface(SEI) in one jar file, along with custom wrapper classes for the requests and responses. The wrappers have the XML content customized a bit (different type names, etc.), but should be compatible with the @RequestWrapper and @ResponseWrapper annotations. The implementation is in an EJB jar file that includes the jar with the SEI in it. My issue is that the wrapper classes I declared are not being used, and instead new ones are being generated. Is it even possible for it to use supplied wrappers, or does it have to generate its own (and if so, is it in any way possible to specify the XML types it generates). I've tested this with wsgen, and I get the same result (new wrapper classes, the ones I supplied ignored) as when I deploy it. Here is the output from wsgen:
    Note: ap round: 1
    [ProcessedMethods Interface: com.company.IngestorService]
    [should process method: ingestProductDirectory hasWebMethods: false ]
    [endpointReferencesInterface: true]
    [declaring class has WebSevice: true]
    [returning: true]
    [WrapperGen - method: ingestProductDirectory(java.lang.String,java.lang.String)]
    [method.getDeclaringType(): com.company.IngestorService]
    [requestWrapper: com.company.IngestProductDirectoryRequest]
    [should process method: datatypes hasWebMethods: false ]
    [endpointReferencesInterface: true]
    [declaring class has WebSevice: true]
    [returning: true]
    [WrapperGen - method: datatypes()]
    [method.getDeclaringType(): com.company.IngestorService]
    [requestWrapper: com.company.DatatypesRequest]
    com\company\DatatypesRequest.java
    com\company\DatatypesResponse.java
    com\company\IngestProductDirectoryRequest.java
    com\company\IngestProductDirectoryResponse.java
    Note: ap round: 2
    I note that is says "hasWebMethods: false". Could that be an issue? Could it not be seeing my methods as web methods. The SEI and the implementation class are in different jar files and different packages. Could this be an issue?
    Here is the web service interface:
    @WebService(
    name = "IngestorService",
    targetNamespace = "http://company.com/"
    @SOAPBinding(
    style = SOAPBinding.Style.DOCUMENT,
    parameterStyle = SOAPBinding.ParameterStyle.WRAPPED
    public interface IngestorService
    @WebMethod(
    action = "http://company.com/ingestProductDirectory"
    @WebResult(
    name = "response",
    targetNamespace = ""
    @RequestWrapper(
    className = "com.company.IngestProductDirectoryRequest"
    @ResponseWrapper(
    className = "com.company.IngestProductDirectoryResponse"
    public void ingestProductDirectory(
    @WebParam(
    name = "sourceDirectory",
    targetNamespace = ""
    String sourceDirectory,
    @WebParam(
    name = "datatype",
    targetNamespace = ""
    String datatype);
    @WebMethod(
    operationName = "datatypes",
    action = "http://company.com/datatypes"
    @WebResult(
    name = "datatypes",
    targetNamespace = ""
    @RequestWrapper(
    localName = "DatatypesRequest",
    className = "com.company.DatatypesRequest"
    @ResponseWrapper(
    localName = "DatatypesResponse",
    className = "com.company.DatatypesResponse"
    public List datatypes();
    Here are the datatype request and response wrappers:
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(
    name = "DatatypesRequest"
    public class DatatypesRequest
    DatatypesResponse.java:
    @XmlAccessorType(XmlAccessType.PROPERTY)
    @XmlType(
    name = "DatatypesResponse",
    propOrder =
    "datatypes"
    public class DatatypesResponse
    private List<String> _datatypes;
    @XmlElementWrapper(
    name = "datatypes",
    required = true,
    nillable = false
    @XmlElement(
    name = "datatype",
    required = false
    public List<String> getDatatypes() {
    if (_datatypes == null) {
    _datatypes = new ArrayList<String>();
    return _datatypes;
    Any help would be greatly appreciated. Thanks.

    I have been trying to do the same... and it seems to be impossible... (or completly undocumented).
    It seems that OC4J 10.3.x is ... no exactly fully EJB3/J2EE5 compliant...
    Or something like that:
    http://blogs.infosupport.com/berte/archive/2005/09/09/1117.aspx
    IMHO... OC4J 10.3.x is still a preview for OC4J 11...
    OC4J 10.3.x is kind of a J2EE4/5 hybrid... if you start digging in the documentation, you will find out that the only
    way to have WS-Security is going back to J2EE4 http://www.oracle.com/technology/products/jdev/howtos/1013/wssecure/10gwssecurity_howto.html
    (of course, I hope you probe me wrong)
    Message was edited by:
    luxspes

  • Error during JNDI lookup Accessing Remote EJB (access to web service restricted using declarative security model)

    Hello everyone,
    I developed a Web Service prototype accessing remote EJB using the EJB
    control with special syntax in the jndi-name attribute: @jws:ejb
    home-jndi-name="t3://10.10.245.70:7131/AccountDelegatorEJB"
    Everything works fine, but I get an error when I restrict access to my web
    service with a declarative security model by implementing steps provided in
    help doc:
    - Define the web resource you wish to protect
    - Define which security role is required to access the web resource
    - Define which users are granted the required security role
    - Configure WebLogic Server security for my web service(Compatibility
    Security/Users)
    I launch the service by entering the address in a web browser. When prompted
    to accept the digital certificate, click Yes, when prompted for network
    authentication information, enter username and password, navigate to the
    Test Form tab of Test View, invoke the method by clicking the button and I
    get the following exception:
    <error>
    <faultcode>JWSError</faultcode>
    <faultstring>Error during JNDI lookup from
    jndi:t3://10.10.245.70:7131/AccountDelegatorEJB[Lookup failed for
    name:t3://10.10.245.70:7131/AccountDelegatorEJB]</faultstring>
    <detail>
    <jwErrorDetail> weblogic.jws.control.ControlException: Error during JNDI
    lookup from jndi:t3://10.10.245.70:7131/AccountDelegatorEJB[Lookup failed
    for name:t3://10.10.245.70:7131/AccountDelegatorEJB] at
    weblogic.knex.control.EJBControlImpl.acquireResources(EJBControlImpl.java:27
    8) at
    weblogic.knex.context.JwsInternalContext.acquireResources(JwsInternalContext
    .java:220) at
    weblogic.knex.control.ControlHandler.invoke(ControlHandler.java:260) at
    ibas.AccountControl.getTransactionHistory(AccountControl.ctrl) at
    ibas.GetSecure.retrieveVisaHistoryTxn(GetSecure.jws:64) </jwErrorDetail>
    </detail>
    </error>
    I have a simple Hello method as well in my WebService (which is also
    restricted) and it works fine, but remote EJB access doesn't. I tested my
    prototype on Weblogic 7.2 and 8.1 platforms - same result.
    Is that a bug or I am missing some additional configuration in order to get
    that working. Has anyone seen similar behavior? Is there a known resolution?
    Or a suggested way to work around the problem?
    Thank you.
    Andre

    Andre,
    It would be best if this issue is handled as an Eval Support case. Please
    BEA Customer Support at http://support.beasys.com along with the required
    files, and request that an Eval support case be created for this issue.
    Thanks
    Raj Alagumalai
    WebLogic Workshop Support
    "Andre Shergin" <[email protected]> wrote in message
    news:[email protected]...
    Anurag,
    I removed "t3", still get an error but a different one (Unable to create
    InitialContext:null):
    <error>
    <faultcode>JWSError</faultcode>
    <faultstring>Error during JNDI lookup from
    jndi://secuser1:[email protected]:7131/AccountDelegatorEJB[Unable to
    create InitialContext:null]</faultstring>
    <detail>
    <jwErrorDetail> weblogic.jws.control.ControlException: Error during JNDI
    lookup from
    jndi://secuser1:[email protected]:7131/AccountDelegatorEJB[Unable to
    create InitialContext:null] at
    weblogic.knex.control.EJBControlImpl.acquireResources(EJBControlImpl.java:27
    8) at
    weblogic.knex.context.JwsInternalContext.acquireResources(JwsInternalContext
    .java:220) at
    weblogic.knex.control.ControlHandler.invoke(ControlHandler.java:260) at
    ibas.AccountControl.getTransactionHistory(AccountControl.ctrl) at
    ibas.GetVisaHistoryTransactions.getVisaHistoryTxn(GetVisaHistoryTransactions
    .jws:67) </jwErrorDetail>
    </detail>
    </error>
    Note: inter-domain communication is configured properly. The Web Service to
    remote EJB works fine without a declarative security.
    Any other ideas?
    Thank you for your help.
    Andre
    "Anurag" <[email protected]> wrote in message
    news:[email protected]...
    Andre,
    It seems you are using the URL
    jndi:t3://secuser1:[email protected]:7131/AccountDelegatorEJB
    whereas you should not be specifying the "t3:" protocol.
    The URL should be like
    jndi://secuser1:[email protected]:7131/AccountDelegatorEJB
    Please do let me know if you see any issues with this.
    Note that this will only allow you to access remote EJBs in the same WLS
    domain. For accessing EJBs on another domain, you need to configure
    inter-domain communication by
    following a few simple steps as mentioned at
    http://e-docs.bea.com/wls/docs81/ConsoleHelp/jta.html#1106135. This link has
    been provided in the EJB Control Workshop documentation.
    Regards,
    Anurag
    "Andre Shergin" <[email protected]> wrote in message
    news:[email protected]...
    Raj,
    I tried that before, it didn't help. I got similar error message:
    <error>
    <faultcode>JWSError</faultcode>
    <faultstring>Error during JNDI lookup from
    jndi:t3://secuser1:[email protected]:7131/AccountDelegatorEJB[Lookup
    failed for
    name:t3://secuser1:[email protected]:7131/AccountDelegatorEJB]</faultstr
    ing>
    <detail>
    <jwErrorDetail> weblogic.jws.control.ControlException: Error during JNDI
    lookup from
    jndi:t3://secuser1:[email protected]:7131/AccountDelegatorEJB[Lookup
    failed for
    name:t3://secuser1:[email protected]:7131/AccountDelegatorEJB] at
    weblogic.knex.control.EJBControlImpl.acquireResources(EJBControlImpl.java:27
    8) at
    weblogic.knex.context.JwsInternalContext.acquireResources(JwsInternalContext
    .java:220) at
    weblogic.knex.control.ControlHandler.invoke(ControlHandler.java:260) at
    ibas.AccountControl.getTransactionHistory(AccountControl.ctrl) at
    ibas.GetSecure.retrieveVisaHistoryTxn(GetSecure.jws:64) </jwErrorDetail>
    </detail>
    </error>
    Anything else should I try?
    P.S. AccountDelegatorEJB, the remote EJB my Web Service calls is NOTaccess
    restricted.
    I hope there is a solution.
    Thanks,
    Andre
    "Raj Alagumalai" <[email protected]> wrote in message
    news:[email protected]...
    Andre,
    Can you try using the following url with username and password
    jndi://username:password@host:7001/my.resource.jndi.object ?
    once you add webapp level security, the authenticated is the user who
    invokes the EJB.
    http://e-docs.bea.com/workshop/docs81/doc/en/workshop/guide/controls/ejb/con
    CreatingANewEJBControl.html?skipReload=true
    has more info on using remote EJB's.
    Hope this helps.
    Thanks
    Raj Alagumalai
    WebLogic Workshop Support
    "Alla Resnik" <[email protected]> wrote in message
    news:[email protected]...
    Hello everyone,
    I developed a Web Service prototype accessing remote EJB using the EJB
    control with special syntax in the jndi-name attribute: @jws:ejb
    home-jndi-name="t3://10.10.245.70:7131/AccountDelegatorEJB"
    Everything works fine, but I get an error when I restrict access to my
    web
    service with a declarative security model by implementing steps
    provided
    in
    help doc:
    - Define the web resource you wish to protect
    - Define which security role is required to access the web resource
    - Define which users are granted the required security role
    - Configure WebLogic Server security for my web service(Compatibility
    Security/Users)
    I launch the service by entering the address in a web browser. Whenprompted
    to accept the digital certificate, click Yes, when prompted for
    network
    authentication information, enter username and password, navigate tothe
    Test Form tab of Test View, invoke the method by clicking the buttonand
    I
    get the following exception:
    <error>
    <faultcode>JWSError</faultcode>
    <faultstring>Error during JNDI lookup from
    jndi:t3://10.10.245.70:7131/AccountDelegatorEJB[Lookup failed for
    name:t3://10.10.245.70:7131/AccountDelegatorEJB]</faultstring>
    <detail>
    <jwErrorDetail> weblogic.jws.control.ControlException: Error during
    JNDI
    lookup from jndi:t3://10.10.245.70:7131/AccountDelegatorEJB[Lookupfailed
    for name:t3://10.10.245.70:7131/AccountDelegatorEJB] at
    weblogic.knex.control.EJBControlImpl.acquireResources(EJBControlImpl.java:27
    8) at
    weblogic.knex.context.JwsInternalContext.acquireResources(JwsInternalContext
    .java:220) at
    weblogic.knex.control.ControlHandler.invoke(ControlHandler.java:260)at
    ibas.AccountControl.getTransactionHistory(AccountControl.ctrl) at
    ibas.GetSecure.retrieveVisaHistoryTxn(GetSecure.jws:64)</jwErrorDetail>
    </detail>
    </error>
    I have a simple Hello method as well in my WebService (which is also
    restricted) and it works fine, but remote EJB access doesn't. I testedmy
    prototype on Weblogic 7.2 and 8.1 platforms - same result.
    Is that a bug or I am missing some additional configuration in order
    to
    get
    that working. Has anyone seen similar behavior? Is there a knownresolution?
    Or a suggested way to work around the problem?
    Thank you.
    Andre

  • Exception while exposing Application Module Methods as Web Service

    Hello Everyone,
    I am working on Jdeveloper 11.1.1.3.0 version and tried to expose one method of application module as web service. To do this, i used "Service Interface" tab of Application module within Jdeveloper and Jdeveloper had generated all interfaces, stubs, code for the Session bean required for web service. I am now trying to "Test Web Service" from the implementation class generated then i am getting this error in Weblogic deployment. Any help/pointers would be highly appreciated.
    I used another installation of Jdeveloper same version at my collegues desktop but getting the same error. Not sure, if this version of Jdeveloper is having issue in exposing application module as web service. I think that database related exception can be ignored as no database call is being made by the application.
    [Running application SalaryControlService on Server Instance IntegratedWebLogicServer...]
    [10:41:26 AM] ---- Deployment started. ----
    [10:41:26 AM] Target platform is (Weblogic 10.3).
    [10:41:27 AM] Retrieving existing application information
    [10:41:27 AM] Running dependency analysis...
    [10:41:27 AM] Deploying 2 profiles...
    [10:41:27 AM] Wrote EJB Module to C:\Documents and Settings\sacggupt\Application Data\JDeveloper\system11.1.1.3.37.56.60\o.j2ee\drs\SalaryControlService\ModelEJB.jar
    [10:41:28 AM] Wrote Enterprise Application Module to C:\Documents and Settings\sacggupt\Application Data\JDeveloper\system11.1.1.3.37.56.60\o.j2ee\drs\SalaryControlService
    [10:41:29 AM] java.lang.NullPointerException
    [10:41:29 AM]      at oracle.j2ee.ws.tools.wsa.jaxws.AssemblerProcessor.getClassNamesFromEjb(AssemblerProcessor.java:180)
    [10:41:29 AM]      at oracle.j2ee.ws.tools.wsa.jaxws.AssemblerProcessor.processEjb(AssemblerProcessor.java:149)
    [10:41:29 AM]      at oracle.j2ee.ws.tools.wsa.jaxws.JaxwsEjbAssembler.processEjb(JaxwsEjbAssembler.java:182)
    [10:41:29 AM]      at oracle.j2ee.ws.tools.wsa.jaxws.JaxwsEjbAssembler.ejbAssemble(JaxwsEjbAssembler.java:152)
    [10:41:29 AM]      at oracle.j2ee.ws.tools.wsa.cli.Processor.jaxwsEjbAssemble(Processor.java:630)
    [10:41:29 AM]      at oracle.j2ee.ws.tools.wsa.cli.Processor.execute(Processor.java:327)
    [10:41:29 AM]      at oracle.j2ee.ws.tools.wsa.cli.Processor.execute(Processor.java:230)
    [10:41:29 AM]      at oracle.j2ee.ws.tools.wsa.Main.mainNoSystemExit(Main.java:84)
    [10:41:29 AM]      at oracle.j2ee.ws.tools.wsa.Main.main(Main.java:49)
    [10:41:29 AM] WARNING: Error while processing ejb-jar.xml for ejb module at "C:\Documents and Settings\sacggupt\Application Data\JDeveloper\system11.1.1.3.37.56.60\o.j2ee\drs\SalaryControlService\ModelEJB.jar".
    [10:41:29 AM] INFO: Unable to load annotation weblogic.javaee.CallByReference for parsing. The annotation is ignored.
    [10:41:29 AM] INFO: Unable to load annotation weblogic.javaee.CallByReference for parsing. The annotation is ignored.
    [10:41:29 AM] INFO: GenericWSWarAnnotationListener.parseAnnotatedClass Adding Servlet Mapping with URL pattern /HrModuleService for annotated WebService class lt.andrejusb.model.server.serviceinterface.HrModuleServiceImpl
    [10:41:30 AM] WSA process exited with code 0
    [10:41:30 AM] Deploying Application...
    <Jan 3, 2011 10:41:31 AM IST> <Warning> <J2EE> <BEA-160195> <The application version lifecycle event listener oracle.security.jps.wls.listeners.JpsAppVersionLifecycleListener is ignored because the application SalaryControlService is not versioned.>
    <ServerMessages><warningMBeanRegisterError> Failed to register the web service Config MBeans for application: SalaryControlService endpoint: SalaryControlService the error is: oracle.as.jmx.framework.util.MissingConfigurationFileException: The configuration at URI "WEB-INF\oracle-webservices.xml" cannot be loaded.
    [10:41:36 AM] Application Deployed Successfully.
    [10:41:36 AM] The following URL context root(s) were defined and can be used as a starting point to test your application:
    [10:41:36 AM] http://10.176.162.16:7101/SalaryControlService
    [10:41:36 AM] Elapsed time for deployment: 9 seconds
    [10:41:36 AM] ---- Deployment finished. ----
    Run startup time: 9391 ms.
    [Application SalaryControlService deployed to Server Instance IntegratedWebLogicServer]
    Target URL -- http://localhost:7101/SalaryControlService/HrModuleService
    Edited by: LearningToFly on Jan 2, 2011 9:13 PM

    Hello,
    Is this resolved yet? The reason I am asking is that I'm getting the same error as yours. I am trying to run the StoreFront tutorial in JDeveloper 11.1.1.3 and here's what I got:
    [04:21:31 PM] ---- Deployment started. ----
    [04:21:31 PM] Target platform is (Weblogic 10.3).
    [04:21:32 PM] Retrieving existing application information
    [04:21:32 PM] Running dependency analysis...
    [04:21:32 PM] Deploying 4 profiles...
    [04:21:32 PM] Wrote MAR file to C:\Documents and Settings\ylin\Application Data\JDeveloper\system11.1.1.3.37.56.60\o.j2ee\drs\StoreFrontModule\metadata1.mar
    [04:21:33 PM] Wrote Web Application Module to C:\Documents and Settings\ylin\Application Data\JDeveloper\system11.1.1.3.37.56.60\o.j2ee\drs\StoreFrontModule\StoreFrontUIWebApp.war
    [04:21:38 PM] Wrote EJB Module to C:\Documents and Settings\ylin\Application Data\JDeveloper\system11.1.1.3.37.56.60\o.j2ee\drs\StoreFrontModule\StoreFrontServiceEJB.jar
    [04:21:40 PM] Wrote Enterprise Application Module to C:\Documents and Settings\ylin\Application Data\JDeveloper\system11.1.1.3.37.56.60\o.j2ee\drs\StoreFrontModule
    [04:21:41 PM] java.lang.NullPointerException
    [04:21:41 PM]      at oracle.j2ee.ws.tools.wsa.jaxws.AssemblerProcessor.getClassNamesFromEjb(AssemblerProcessor.java:180)
    [04:21:41 PM]      at oracle.j2ee.ws.tools.wsa.jaxws.AssemblerProcessor.processEjb(AssemblerProcessor.java:149)
    [04:21:41 PM]      at oracle.j2ee.ws.tools.wsa.jaxws.JaxwsEjbAssembler.processEjb(JaxwsEjbAssembler.java:182)
    [04:21:41 PM]      at oracle.j2ee.ws.tools.wsa.jaxws.JaxwsEjbAssembler.ejbAssemble(JaxwsEjbAssembler.java:152)
    [04:21:41 PM]      at oracle.j2ee.ws.tools.wsa.cli.Processor.jaxwsEjbAssemble(Processor.java:630)
    [04:21:41 PM]      at oracle.j2ee.ws.tools.wsa.cli.Processor.execute(Processor.java:327)
    [04:21:41 PM]      at oracle.j2ee.ws.tools.wsa.cli.Processor.execute(Processor.java:230)
    [04:21:41 PM]      at oracle.j2ee.ws.tools.wsa.Main.mainNoSystemExit(Main.java:84)
    [04:21:41 PM]      at oracle.j2ee.ws.tools.wsa.Main.main(Main.java:49)
    [04:21:41 PM] WARNING: Error while processing ejb-jar.xml for ejb module at "C:\Documents and Settings\ylin\Application Data\JDeveloper\system11.1.1.3.37.56.60\o.j2ee\drs\StoreFrontModule\StoreFrontServiceEJB.jar".
    [04:21:41 PM] INFO: Unable to load annotation weblogic.javaee.CallByReference for parsing. The annotation is ignored.
    [04:21:41 PM] INFO: Unable to load annotation javax.interceptor.Interceptors for parsing. The annotation is ignored.
    [04:21:41 PM] INFO: Unable to load annotation weblogic.javaee.CallByReference for parsing. The annotation is ignored.
    [04:21:41 PM] INFO: Unable to load annotation javax.interceptor.Interceptors for parsing. The annotation is ignored.
    [04:21:41 PM] INFO: GenericWSWarAnnotationListener.parseAnnotatedClass Adding Servlet Mapping with URL pattern /StoreFron
    Can someone help with this? Thank you in advance!
    Edited by: 834077 on Mar 5, 2011 6:28 AM

  • JCO in a EJB used as Web Service

    Hi All,
    I'm trying to use JCO in a Web Service. What happens is that as soon as I try to call -any- JCO method I get an error: Exception in method getObjects.I can't even seem to catch this error within Java for a personalized message. I can't find an error in  "dev_jrfc.trc" either.
    To use JCO I referenced sapjco.jar as an external JAR in the Libraries from the Java Build Path. 
    Calling the JCO in a Web Dynpro environment doesn't give problems.
    Does anyone know the reason for this and can help?
    Thanks,
    Jeschael
    Detailed error:
    HTTP/1.1 500 Internal Server Error
    Connection: close
    Server: SAP J2EE Engine/7.00
    Content-Type: text/xml; charset=UTF-8
    Date: Thu, 22 Feb 2007 10:07:33 GMT
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Client</faultcode><faultstring>Exception in method getObjects.</faultstring><detail><ns1:com.sap.engine.services.ejb.exceptions.BaseEJBException xmlns:ns1='http://sap-j2ee-engine/client-runtime-error'>Exception in method getObjects.</ns1:com.sap.engine.services.ejb.exceptions.BaseEJBException></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
    Message was edited just after posting by :
            J.V. Lebbink
    "JCO function" changed in "JCO method"

    Hi, Jeschael!
    I suppose you already tried out calling R/3 FM via JCo in a simple test class, which - without any surrounding - just executes the JCo-call and outputs the returned values or any exception.
    What was the result of this? The above mentioned exceptions while creating the client? For debugging the Web Service, you simply have to set a breakpoint in your EJBs method and start via NWDS a remote debugging session. As soon as the Web Service call is executed, the NWDS should open and execution should stop at breakpoint.
    Another thing is: Did you already consider using Enterprise Connector for accessing R/3 functions? It' s much more comfortable enabling type-secure and stable usage of R/3 FMs.
    Regards,
    thomas

  • Stateless EJB expose as web service

    I use JDeveloper 10.1.3.0.4 created the folllowing EJB:
    BMP: ProductEntityEJB
    Stateless session bean: ProductSessionEJB
    After i generated session bean web service via web service wizard and
    deploy the web service by the generated deployment file,
    the error occurred:
    ---- Deployment started. ---- 2006&#24180;3&#26376;29&#26085; &#19979;&#21320;02:41:16
    Target platform is Standalone OC4J 10g 10.1.3 (oc4j).
    Wrote EJB JAR file to C:\JCo\JDeveloper Workspace\JDevFYP\JDevFYPWS\EjbWebServices.jar
    Wrote EAR file to C:\JCo\JDeveloper Workspace\JDevFYP\JDevFYPWS\JDevFYP-JDevFYPWS-EJB-WS.ear
    Uploading file JDevFYP-JDevFYPWS-EJB-WS.ear ...
    Application Deployer for JDevFYP-JDevFYPWS-EJB-WS STARTS.
    Copy the archive to C:\SAP\JSF\jdevstudio1013\j2ee\home\applications\JDevFYP-JDevFYPWS-EJB-WS.ear
    Initialize C:\SAP\JSF\jdevstudio1013\j2ee\home\applications\JDevFYP-JDevFYPWS-EJB-WS.ear begins...
    Unpacking JDevFYP-JDevFYPWS-EJB-WS.ear
    Done unpacking JDevFYP-JDevFYPWS-EJB-WS.ear
    Initialize C:\SAP\JSF\jdevstudio1013\j2ee\home\applications\JDevFYP-JDevFYPWS-EJB-WS.ear ends...
    Starting application : JDevFYP-JDevFYPWS-EJB-WS
    Initializing ClassLoader(s)
    Initializing EJB container
    Loading connector(s)
    Starting up resource adapters
    Processing EJB module: EjbWebServices.jar
    application : JDevFYP-JDevFYPWS-EJB-WS is in failed state
    Operation failed with error:
         Missing class: fypws.bean.product.ProductSessionEJBBean
         Dependent class: com.evermind.server.ejb.deployment.BeanDescriptor
         Loader: oc4j:10.1.3
         Code-Source: /C:/SAP/JSF/jdevstudio1013/j2ee/home/lib/oc4j-internal.jar
         Configuration: <code-source> in META-INF/boot.xml in C:\SAP\JSF\jdevstudio1013\j2ee\home\oc4j.jar
    This load was initiated at JDevFYP-JDevFYPWS-EJB-WS.root:0.0.0 using the Class.forName() method.
    The missing class is available from the following locations:
         1. Code-Source: /C:/SAP/JSF/jdevstudio1013/j2ee/home/applications/ejb1/ejb1.jar (from <ejb> in C:\SAP\JSF\jdevstudio1013\j2ee\home\applications\ejb1)
         This code-source is available in loader ejb1.root:0.0.0.
    Deployment failed
    Elapsed time for deployment: 2 seconds
    #### Deployment incomplete. #### 2006&#24180;3&#26376;29&#26085; &#19979;&#21320;02:41:18
    How can i solve it??

    Can you try and see if installing JDeveloper into a directory with no spaces in it (i.e not in \JDeveloper Workspace\) solves the problem?

  • EJB 3.0 Web service fail to deploy when ws result is on a diff lib project

    I'm trying to develop a web service using EJB 3.0 with annotations. I'm using Netbeans 5.5 EE.
    The web service should returns an object declared on another Netbeans project.
    ( a library.jar).
    Netbeans compiles everything alright, although when I deploy the application into Glassfish it complains with an error saying that wsdl file for the web service wasn't found.
    If I move the returning object class into the same ejb project as the web service it works fine.
    So, can anybody explain what is happening ? Is it a bug of Netbeans, Glassfish, EJB 3.0, JAX-WS or newbie programmer ?

    I'm trying to develop a web service using EJB 3.0 with annotations. I'm using Netbeans 5.5 EE.
    The web service should returns an object declared on another Netbeans project.
    ( a library.jar).
    Netbeans compiles everything alright, although when I deploy the application into Glassfish it complains with an error saying that wsdl file for the web service wasn't found.
    If I move the returning object class into the same ejb project as the web service it works fine.
    So, can anybody explain what is happening ? Is it a bug of Netbeans, Glassfish, EJB 3.0, JAX-WS or newbie programmer ?

  • Unable to expose a method in web service

    Hi,
    My scenario is to expose a method in service. This method will take date as input & should return all the rows.
    To Implement this, I took employeeVO of HR DB(Employees Table) & created a ViewCriteria "GetEmpbyHireDate" with Hiredate as input param.
    & in AMImpl the code is
    public BaseEmployeeVOImpl getEmployeesByHireDate(Date hiredate){
    BaseEmployeeVOImpl baseEmployeeVO = (BaseEmployeeVOImpl) findViewObject("BaseEmployee1");
    baseEmployeeVO.setApplyViewCriteriaName("GetEmpbyHireDate");
    baseEmployeeVO.setNamedWhereClauseParam("pHireDate", hiredate);
    baseEmployeeVO.executeQuery();
    return baseEmployeeVO;
    The issue is I'm not able to see this method in "Available" list of Web Service Wizard.
    Help me in understanding what is missing ?
    Thanks in advance.
    P.S. from Jdev Help I understood that "Only methods with simple attributes as parameters and return types that are either void or view rows will appear in the list." & my method is returning rows of a EmployeeVO.

    Hi,
    2 comments:
    1) View Criteria can be directly exposed as find methods. Its on the last wizard page (just click the View Criteria tab). So no need for an Impl method
    2) If you wanted to expose a method, then the documentation I think is crystal clear: "oracle.jbo.server.ViewRowImpl or any subtype" Your method returns BaseEmployeeVOImpl (see the difference ?)
    Frank

Maybe you are looking for

  • How can I get Navigation Menu Button to remain in down state after clicked?

    Hi there, I'm messing about with a Navigation Menu and would like to click on the button and once clicked, the button remains in its down state.  I can't seem to find a way of doing this?  Any pointers? Cheers

  • Path of assigining chart of accounts to company code

    Hi can anyone tell me the path of assigning chart of accounts to company code (t.code OB62) in ECC6. thanx in advance

  • Help me run oracle 10r2

    my document installation: http://paste2.org/p/1963836 and i saw this video http://v.youku.com/v_show/id_XNDIxNDI1MjA=.html i was run http://localhost.localdomain:5560/isqlplus ok, but when i restart and login as user oracle and run sqlplus "scott/tig

  • "in private"

    I used to be able to open a new tab and I would get a screen showing recently vivited web site. there was also a feature I think was called "In Private" where you could browse without having it on your history. When I open a tab now I just get the ho

  • Installing new and uninstalling old Flash Player

    I installed the latest Adobe Flash Player version on my iMac.  Now I keep getting an icon and window telling me to install Flash player everytime I click on my hard drive.  When I click to go ahead and install, I receive the message that a later vers