Deploy a web service with the deploy tool (J2EE)

Hi!
I want to deploy a web service with the Deploy Tool (J2EE 1.4).
(For info, I'm working on Win 2000.)
I have the following error when I'm trying to deploy:
distribute: C:\monHello2\monApp.ear
Deploy action running...
Deployment failed on target localhost:4848_server : Fatal Error from EJB Compiler -- jaxrpc compilation exception
!!! Operation Failed !!!
Someone can help me, please? What's the problem?
Other question: when I create the WAR file, I have to add : my interface class, my implementation class, my others java classes, my WSDL file and my mapping.xml file.
Should I add the .jar that is used by one of my class???? I think yes, but...
thank you and excuse me for my english... ;o)

Only primitive types can be returned? Is thatcorrect????
true - for more details check out section 3.4.1.3 of
this book which is available for purchase or online
http://java.sun.com/blueprints/guidelines/designing_w
ebservices/I meant to say primitive type and "special POJOs" called "JAXRPC Value Types" - check out the reference I listed

Similar Messages

  • Problem deploying web service with the deploy tool (J2EE)

    Hello,
    I am trying to deploy a sample Web Service on the Sun Java System Application Server Platform Edition 8.1 2005Q1.
    I run into a deployment problem ("jaxrpc compilation exception") when I have one of the web methods declared (in the endpoint interface) to throw a service-specific exception. The problem disappears when I change the declaration to throw an Exception.
    Here is the exception class:
    public class StockNotFoundException extends Exception {
    private String message;
    public StockNotFoundException(String message) {
    super(message);
    this.message = message;
    public String getMessage() {
    return message;
    the endpoint interface:
    public interface StockServiceIF extends Remote {
    // the service methods
    public boolean sellStocks(String ticker, int quantity)
    throws RemoteException, StockNotFoundException;
    and here are the error messages I am seeing:
    in the deploy tool dialog:
    distribute: C:\Beginning J2EE 1.4\Ch13\StockServiceApp\StockServiceApp.ear
    deployment started : 0%
    Deploying application in domain failed; Fatal Error from EJB Compiler -- jaxrpc compilation exception
    ; requested operation cannot be completed
    !!! Operation Failed !!!
    !!! With The Following Failure Messages !!!
    Deploying application in domain failed; Fatal Error from EJB Compiler -- jaxrpc compilation exception
    ; requested operation cannot be completed
    Fatal Error from EJB Compiler -- jaxrpc compilation exception
    and in the server log:
    [#|2005-02-01T18:30:47.856-0600|INFO|sun-appserver-pe8.1|javax.enterprise.system.tools.deployment|_ThreadID=12;|DPL5109: EJBC - START of EJBC for [StockServiceApp]|#]
    [#|2005-02-01T18:30:47.856-0600|INFO|sun-appserver-pe8.1|javax.enterprise.system.tools.deployment|_ThreadID=12;|Processing beans ...|#]
    [#|2005-02-01T18:30:47.936-0600|INFO|sun-appserver-pe8.1|javax.enterprise.system.stream.out|_ThreadID=12;|
    error: incorrect fault part name for fault "StockNotFoundException" of operation "sellStocks": "StockNotFoundException"|#]
    [#|2005-02-01T18:30:47.966-0600|INFO|sun-appserver-pe8.1|javax.enterprise.system.tools.deployment|_ThreadID=12;|Total Deployment Time: 1001 msec, Total EJB Compiler Module Time: 0 msec, Portion spent EJB Compiling: 0%|#]
    [#|2005-02-01T18:30:47.966-0600|SEVERE|sun-appserver-pe8.1|javax.enterprise.system.tools.deployment|_ThreadID=12;|Exception occured in J2EEC Phase
    com.sun.enterprise.deployment.backend.IASDeploymentException: Fatal Error from EJB Compiler -- jaxrpc compilation exception
         at com.sun.enterprise.webservice.codegen.JaxRpcRICodegen.accept(JaxRpcRICodegen.java:206)
         at com.sun.enterprise.deployment.EjbBundleDescriptor.visit(EjbBundleDescriptor.java:584)
         at com.sun.enterprise.deployment.Application.visit(Application.java:1333)
         at com.sun.enterprise.webservice.codegen.JaxRpcRICodegen.run(JaxRpcRICodegen.java:103)
         at com.sun.ejb.codegen.IASEJBC.doCompile(IASEJBC.java:785)
         at com.sun.ejb.codegen.IASEJBC.ejbc(IASEJBC.java:563)
         at com.sun.enterprise.deployment.backend.EJBCompiler.preDeployApp(EJBCompiler.java:340)
         at com.sun.enterprise.deployment.backend.EJBCompiler.compile(EJBCompiler.java:209)
         at com.sun.enterprise.deployment.backend.AppDeployer.runEJBC(AppDeployer.java:284)
         at com.sun.enterprise.deployment.backend.AppDeployer.deploy(AppDeployer.java:176)
         at com.sun.enterprise.deployment.backend.AppDeployer.doRequestFinish(AppDeployer.java:107)
         at com.sun.enterprise.deployment.phasing.J2EECPhase.runPhase(J2EECPhase.java:146)
         at com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:71)
         at com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:633)
         at com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:188)
         at com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:520)
         at com.sun.enterprise.management.deploy.DeployThread.deploy(DeployThread.java:143)
         at com.sun.enterprise.management.deploy.DeployThread.run(DeployThread.java:171)
    |#]
    I would appreciate any pointers to resolving this issue.
    Thanks,
    Satyen

    Can you post the WSDL that was generated by the tool
    for this interface ?I generate the WSDL using "wscompile -define -nd . -classpath ..\build\classes -f:wsi service-config.xml", and here it is:
    <?xml version="1.0" encoding="UTF-8"?>
    <definitions name="StockService" targetNamespace="urn:stockService" xmlns:tns="urn:stockService" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
    <types>
    <schema targetNamespace="urn:stockService" xmlns:tns="urn:stockService" xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://www.w3.org/2001/XMLSchema">
    <complexType name="StockNotFoundException">
    <sequence>
    <element name="message" type="string" nillable="true"/></sequence></complexType>
    <element name="StockNotFoundException" type="tns:StockNotFoundException"/></schema></types>
    <message name="StockServiceIF_sellStocks">
    <part name="String_1" type="xsd:string"/>
    <part name="int_2" type="xsd:int"/></message>
    <message name="StockServiceIF_sellStocksResponse">
    <part name="result" type="xsd:boolean"/></message>
    <message name="StockNotFoundException">
    <part name="StockNotFoundException" element="tns:StockNotFoundException"/></message>
    <portType name="StockServiceIF">
    <operation name="sellStocks" parameterOrder="String_1 int_2">
    <input message="tns:StockServiceIF_sellStocks"/>
    <output message="tns:StockServiceIF_sellStocksResponse"/>
    <fault name="StockNotFoundException" message="tns:StockNotFoundException"/></operation></portType>
    <binding name="StockServiceIFBinding" type="tns:StockServiceIF">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"/>
    <operation name="sellStocks">
    <soap:operation soapAction=""/>
    <input>
    <soap:body use="literal" namespace="urn:stockService"/></input>
    <output>
    <soap:body use="literal" namespace="urn:stockService"/></output>
    <fault name="StockNotFoundException">
    <soap:fault name="StockNotFoundException" use="literal"/></fault></operation></binding>
    <service name="StockService">
    <port name="StockServiceIFPort" binding="tns:StockServiceIFBinding">
    <soap:address location="REPLACE_WITH_ACTUAL_URL"/></port></service></definitions>
    ---------------------------------------------------------------------------------------------------------

  • Developing, Deploying, Managing Web Services with Oracle9i

    HOWTO: The "Hello, World!" Sample Project
    Follow these steps to create, compile, and run a simple Java program in JDeveloper:
    1.Create a project. Choose File | New Empty Project. A new project node, with a name resembling
    MyProject1.jpr will appear in the Navigation pane.
    2.Create a Java file. Make sure your project node is selected, and choose File | New. The Object Gallery opens.
    Select the Objects tab and double-click the Class icon. In the Class Wizard dialog that opens:
    1.Replace the default class name with "HelloWorld".
    2.Click OK.
    A new file node, named HelloWorld.java will appear under your project node.
    3.Edit the file. Double-click the file node to open the file. Edit the file, adding this method to the definition of the
    HelloWorld class.
    public static void main(String[] args) {
    System.out.println("Hello, World!");
    4.Build the project. Choose Project | MakeProject. A message will appear, reporting success or failure, in the
    Status line at the bottom of the JDeveloper window. If there are errors they will be listed in the Message View
    pane, under the Compiler tab.
    5.Run the project. When the project has been successfully built, Choose Run | Run. Your message will be printed in
    the Message View pane, under the HelloWorld tab.
    null

    That seems to be it. Thanks a lot. I guess it was simply a confusion of terminology. They call the material "Web Services" in the white paper (like the rest of the world), and "Dynamic Services" everywhere else. Thanks again.

  • How do we deploy several Web Services under the same Root Context?

    We have several webservices, each in their own WAR file, running on OC4J 10.1.3. They each have their own Root Context and Oracle Welcome Servlet. This works well, and since they are all separate we can easily hot-deploy updated versions.
    The drawback is separate URL's like :
    .../RootContext1/WebService1
    .../RootContext2/WebService2
    .../RootContext3/WebService3
    How do we assemble our Web Services to share a single Root Context? We are hoping to achieve URL's like this :
    .../WebServices/WebService1
    .../WebServices/WebService2
    .../WebServices/WebService3
    Do we have to bundle them all into the same WAR/EAR (and loose the power of individual deployment) or is there another way?
    Thanks in advance!

    If each one is a separate WAR file, then at the OC4J level each one will need a separate root context as it gets bound into the default-web-app.
    I guess the corollary question here is if there is someway to combine multiple webservice endpoints into one WAR file -- which can then be mapped to a single root context.
    I'll try and get someone more WS savvy than myself to take a look at this for you.
    And Clever Apache is a viable option.
    cheers
    -steve-

  • Failure to deploy Multiple Web Services per EAR deployment

    Hi,
    I am developing web services using EJB 3.0 beans using annotations. The deployment of EAR fails when I have more than ONE Web services in a single EAR file. The exception I get is as below. Can anybody tell me if it is not possible to package more than one service in a single EAR and each web service and its supporting classes have to go in separate EAR file.
    When I deploy One Service per EAR, the deployment works fine.
    Regards,
    Vikrant.
    ##0#0#Error##Plain###com.sap.engine.interfaces.webservices.server.deploy.WSDeploymentException: Exception occured during web services deployment. Unable to extract web services deployment data for archive Pem1101EJB.jar, application sap.com/Pem1101EAR.
         at com.sap.engine.services.webservices.server.deploy.ws.WSDeployProcess.extractWebServicesJ2EEEngineDescriptors(WSDeployProcess.java:304)
         at com.sap.engine.services.webservices.server.deploy.ws.WSDeployProcess.extractWebServicesJ2EEEngineDescriptors(WSDeployProcess.java:272)
         at com.sap.engine.services.webservices.server.deploy.ws.WSDeployProcess.init(WSDeployProcess.java:166)
         at com.sap.engine.services.webservices.server.deploy.WSBaseAbstractDProcess.makeProcess(WSBaseAbstractDProcess.java:307)
         at com.sap.engine.services.webservices.server.deploy.WebServicesDeployManager.deployWebServices(WebServicesDeployManager.java:1051)
         at com.sap.engine.services.webservices.server.deploy.WebServicesDeployManager.deploy(WebServicesDeployManager.java:248)
         at com.sap.engine.services.deploy.server.application.DeploymentTransaction.makeComponents(DeploymentTransaction.java:506)
         at com.sap.engine.services.deploy.server.application.DeployUtilTransaction.commonBegin(DeployUtilTransaction.java:249)
         at com.sap.engine.services.deploy.server.application.DeploymentTransaction.begin(DeploymentTransaction.java:215)
         at com.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhasesOnOneServer(ApplicationTransaction.java:384)
         at com.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhases(ApplicationTransaction.java:418)
         at com.sap.engine.services.deploy.server.DeployServiceImpl.makeGlobalTransaction(DeployServiceImpl.java:2194)
         at com.sap.engine.services.deploy.server.DeployServiceImpl.deploy(DeployServiceImpl.java:318)
         at com.sap.engine.services.deploy.server.DeployServiceImpl.deploy(DeployServiceImpl.java:275)
         at com.sap.engine.services.dc.gd.impl.ApplicationDeployer.deploy(ApplicationDeployer.java:109)
         at com.sap.engine.services.dc.gd.impl.InitialApplicationDeployer.performDeployment(InitialApplicationDeployer.java:113)
         at com.sap.engine.services.dc.gd.impl.InitialGenericDeliveryImpl.deploy(InitialGenericDeliveryImpl.java:55)
         at com.sap.engine.services.dc.cm.deploy.impl.OnlineDeployProcessor.performDelivery(OnlineDeployProcessor.java:160)
         at com.sap.engine.services.dc.cm.deploy.impl.BulkOnlineDeployProcessor.deploy(BulkOnlineDeployProcessor.java:48)
         at com.sap.engine.services.dc.cm.deploy.impl.AbstractDeployProcessor$DeployProcessorHelper.visit(AbstractDeployProcessor.java:178)
         at com.sap.engine.services.dc.cm.deploy.impl.DeploymentItemImpl.accept(DeploymentItemImpl.java:83)
         at com.sap.engine.services.dc.cm.deploy.impl.AbstractDeployProcessor.deploy(AbstractDeployProcessor.java:77)
         at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.performDeploy(DeployerImpl.java:631)
         at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.doDeploy(DeployerImpl.java:488)
         at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.deploy(DeployerImpl.java:209)
         at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.deploy(DeployerImpl.java:154)
         at com.sap.engine.services.dc.cm.deploy.impl.DeployerImplp4_Skel.dispatch(DeployerImplp4_Skel.java:875)
         at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:351)
         at com.sap.engine.services.rmi_p4.server.ServerDispatchImpl.run(ServerDispatchImpl.java:70)
         at com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:61)
         at com.sap.engine.services.rmi_p4.P4Message.execute(P4Message.java:36)
         at com.sap.engine.services.cross.fca.FCAConnectorImpl.executeRequest(FCAConnectorImpl.java:882)
         at com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:52)
         at com.sap.engine.services.cross.fca.MessageReader.run(MessageReader.java:59)
         at com.sap.engine.core.thread.execution.Executable.run(Executable.java:108)
         at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:287)
    Caused by: java.lang.NullPointerException
         at com.sap.engine.services.webservices.server.deploy.j2ee.ws.J2EE14Convertor.convert(J2EE14Convertor.java:650)
         at com.sap.engine.services.webservices.server.deploy.j2ee.ws.J2EE14Convertor.convert(J2EE14Convertor.java:460)
         at com.sap.engine.services.webservices.server.deploy.j2ee.ws.J2EE14Convertor.convertJ2EEModule(J2EE14Convertor.java:297)
         at com.sap.engine.services.webservices.server.deploy.j2ee.ws.J2EE14Convertor.convertJ2EEModule(J2EE14Convertor.java:219)
         at com.sap.engine.services.webservices.server.deploy.ws.WSDeployProcess.extractWebServicesJ2EEEngineDescriptors(WSDeployProcess.java:289)
         ... 35 more

    Hi,
    Is the problem solved?
    I am also facing a similar issues and getting the following error
    "Unable to extract web services deployment data for archive ".
    Further, its a Java EE application and it doesn't contain any web service. Why am i getting this error while deploying?
    Any body can help me out in this?
    Thanks in advance,
    Venkat.

  • Invoking a web service with the WSDL URL given at run time

    I have created a very Simple Web Service using Netbeans 6.0 as an EJB Module. I have successfully created clients to access the web service, both through a Composite Application and through a simple Java Desktop Application, using the create "New Web Service Client" option, either by pointing to the EJB project either by providing the WSDL URL.
    What I want now, is for the Java Desktop application to be able to consume the service after it has discovered the WSDL URL at runtime (e.g. through UDDI).
    From what I have been able to find on the web, I should use the javax.xml.ws.Service class. But when I attempt to use the getPort method I get the exception:
    "com.sun.xml.ws.model.RuntimeModelerException: runtime modeler error: Wrapper class mypackagename.jaxws.MyWebServiceName is not found. Have you run APT to generate them?"
    Since I know that this class is not needed for the Web Service to be accessed, when the two procedures I describe above are used, I wonder what I can do to get this to work.
    I have tried using apt from the command line but it can't find Java EE classes, so it doesn't work.
    Nikos

    Hi Yarecki,
    I'm afraid I'm also a newbie, and I'm feeling my way around things.
    I have written some code. However, you should be warned that... it doesn't work!
            String wsdlLocation;//=...some URL...
            String input;//=...XML...either SOAP message either SOAP payload
         try{
             java.net.URL wsdlURL = new java.net.URL(wsdlLocation);
                //these should be extracted from the service WSDL document
                java.lang.String serviceName = "CalculationServiceService";
                java.lang.String portName = "CalculationServicePort";
                String namespace = "http://localhost:8080/CalculationServiceService";
                javax.xml.transform.Source inputSource = new javax.xml.transform.stream.StreamSource(new java.io.StringReader(input));
                javax.xml.namespace.QName serviceQName = new javax.xml.namespace.QName(namespace, serviceName);
                javax.xml.namespace.QName portQName = new javax.xml.namespace.QName(namespace, portName);
                javax.xml.ws.Service service = javax.xml.ws.Service.create(wsdlURL, serviceQName);           
                javax.xml.ws.Dispatch<javax.xml.transform.Source> dispatch =
                      service.createDispatch(portQName, javax.xml.transform.Source.class, javax.xml.ws.Service.Mode.MESSAGE);
           //javax.xml.ws.Dispatch<javax.xml.transform.Source> dispatch =
               //service.createDispatch(portQName, javax.xml.transform.Source.class, javax.xml.ws.Service.Mode.PAYLOAD);
    //alternative method, with different input
                javax.xml.transform.Source replySource = dispatch.invoke(inputSource);
                javax.xml.bind.JAXBContext jc = javax.xml.bind.JAXBContext.newInstance(nikos.test.CalculationResult.class);
                javax.xml.bind.Unmarshaller unm = jc.createUnmarshaller();
                nikos.test.CalculationResult result = (nikos.test.CalculationResult)unm.unmarshal(replySource);
                System.out.println(result.getResult());
            } catch (JAXBException ex) {
                JOptionPane.showMessageDialog(this, ex);
                ex.printStackTrace();
            } catch (MalformedURLException ex) {
                ex.printStackTrace();//this should not happen.
            }In fact I'm getting a weird error
    javax.xml.ws.soap.SOAPFaultException: java.lang.NullPointerException
            at com.sun.xml.ws.fault.SOAP11Fault.getProtocolException(SOAP11Fault.java:187)
            at com.sun.xml.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:108)
            at com.sun.xml.ws.client.dispatch.DispatchImpl.doInvoke(DispatchImpl.java:187)
            at com.sun.xml.ws.client.dispatch.DispatchImpl.invoke(DispatchImpl.java:206)
         //lines from my source code are here
    Caused by: javax.xml.ws.WebServiceException: java.lang.NullPointerException
            at com.sun.enterprise.security.jmac.config.PipeHelper.makeFaultResponse(PipeHelper.java:328)
            at com.sun.enterprise.security.jmac.config.PipeHelper.getFaultResponse(PipeHelper.java:366)
            at com.sun.enterprise.webservice.CommonServerSecurityPipe.processRequest(CommonServerSecurityPipe.java:223)
            at com.sun.enterprise.webservice.CommonServerSecurityPipe.process(CommonServerSecurityPipe.java:129)
            at com.sun.xml.ws.api.pipe.helper.PipeAdapter.processRequest(PipeAdapter.java:115)
            at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:595)
            at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:554)
            at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:539)
            at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:436)
            at com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:243)
            at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:444)
            at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:244)
            at com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:135)
            at com.sun.enterprise.webservice.Ejb3MessageDispatcher.handlePost(Ejb3MessageDispatcher.java:113)
            at com.sun.enterprise.webservice.Ejb3MessageDispatcher.invoke(Ejb3MessageDispatcher.java:87)
            at com.sun.enterprise.webservice.EjbWebServiceServlet.dispatchToEjbEndpoint(EjbWebServiceServlet.java:200)
            at com.sun.enterprise.webservice.EjbWebServiceServlet.service(EjbWebServiceServlet.java:129)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
            at com.sun.enterprise.web.AdHocContextValve.invoke(AdHocContextValve.java:114)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
            at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
            at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:87)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:206)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
            at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
            at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:150)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
            at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
            at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
            at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:270)
            at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:637)
            at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:568)
            at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:813)
            at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:339)
            at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:261)
            at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:212)
            at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
            at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
    Caused by: java.lang.NullPointerException
            at com.sun.xml.ws.tx.service.TxServerPipe.process(TxServerPipe.java:163)
            at com.sun.enterprise.webservice.CommonServerSecurityPipe.processRequest(CommonServerSecurityPipe.java:218)
            ... 39 moreAs I've said before I've called this web service successfully using three different methods.
    It appears it has something to do with security issues, but I've no security at all...

  • Combine multiple web services with the same SQL query into one

    Hello,
    I would like to ask a question regarding combine multiple similar web services into one. Can you please tell me if it is possible to combine 4-5 web services into one since they built on the same SQL query with 5 different criterias or condition so that the user can enter any of the 5 criterias to populate the data on the form instead of having 5 different web services?
    e.g Query: Select appName, permit#, address, phone, description, type, section, from table where appName = can be 'appName, permit#, address, phone, or description' to populate the rest of the data to the form.
    Does any one have ever done some thing like this in Workbench ES? If so please assist. I know it can be easier to build it in Visual Basic, C#, or dot.net but the requirement is to build it in workbench ES.
    Thanks in advance,
    Han Dao

    If you are querying for Name, PhoneNumber, and SSN, and you queried for all people with a phone number that started with 867, you would have a potentially long list of people.  So to keep track of all of the people, we store each record in XML complex elements.  The root node is just any name you want, and the repeating element is the complex element name. 
    So using the example from above, I'm going to specify the following:
         Root Node: Result
         Repeating Element: Person
    So now when I do a query, my resultXML will look like:
    <Result>
          <Person>
                 <Name>Alex</Name>
                 <PhoneNumber>867-5309</PhoneNumber>
                 <SSN>111-11-1111</SSN>
          </Person>
    </Result>
    If your query returned multiple results (like ours would probably), it would look like:
    <Result>
          <Person>
                 <Name>Alex</Name>
                 <PhoneNumber>867-5309</PhoneNumber>
                 <SSN>111-11-1111</SSN>
          </Person>
          <Person>
                 <Name>Han</Name>
                 <PhoneNumber>867-2169</PhoneNumber>
                 <SSN>222-22-2222</SSN>
          </Person>
    </Result>
    So Result and Person is just to give a little bit of structure to the xml result (containers really).  So you can name them whatever is helpful for you.
    The column name mappings map the query columns (Name, PhoneNumber, SSN) to some node in the XML (Name, PhoneNumber, SSN).  So you don't need to specify which field maps to what in the form.  Just copy the column names to the element name so you have a 1-to-1 naming.  If you want to manipulate the XML a bit though, you could do:
    Column Name               Element
    Name                            YourName
    PhoneNumber                Phone
    SSN                              Secret
    which would then make your xml look like:
    <Result>
          <Person>
                 <YourName>Alex</YourName>
                 <Phone>867-5309</Phone>
                 <Secret>111-11-1111</Secret>
          </Person>
    </Result>
    It lets you change the XML element names to whatever you want. Otherwise by default they take on their column names.
    In your form, you could bind to the WSDL through the Data Connections pane and point it to your web service.  This will then create form elements that you can just drag and drop allowing you to have the information available when the service gets ran.  Once the service is called, you can modify the field's data to get whatever information you need in order to populate other form fields. 
    If that is too confusing, feel free to send me your form (e-mail is on profile page) and I'll add comments to it to show you how to set up the form for the web service call (and also give me the link to your webservice)

  • Web Service with SOAP deploys but Test client fails

    I created a simple application based on a WSDL, the classes where created ok, everything compiled ok but when testing it using BEA's Test client I get the error:
    Parse of wsdl (http://localhost:7001/AA/AA?WSDL) failed due to weblogic.testclient.WsdlParseFailedException: No elements for {http://www.omg.org/IDL-Mapped/}cgin.LoginName found..
    the WSDL was validated.
    Any ideas of where the error may be?

    From the naming alone, it would seem that the type the test client is complaining it cannot find is inside the imported wsdl.
    I have not come across this before, so I am not sure if that is a flaw in the test client or simply beyond what is supported. Support would probably have to answer that question.

  • Error while deploying a web service whose return type is java.util.Date

    Hi
    I have written a simple web service which takes in a date input (java.util.Date) and returns the same date back to the client.
    public interface Ping extends Remote
    * A simple method that pings the server to test the webservice.
    * It sends a datetime to the server which returns the datetime.
    * @param pingDateRequest A datetime sent to the server
    * @returns The original datetime
    public Date ping(Date pingDateRequest) throws RemoteException;
    The generation of the Web service related files goes smoothly in JDeveloper 10g. The problem arises when I try to deploy this web service on the Oracle 10g (10.0.3) OC4J standalone. it gives me the following error on the OC4J console :
    E:\Oracle\oc4j1003\j2ee\home\application-deployments\Sachin-TradingEngineWS-WS\
    WebServices\com\sachin\tradeengine\ws\Ping_Tie.java:57: ping(java.util.Date) in com.sachin.tradeengine.ws.Ping cannot be applied to (java.util.Calendar) _result  = ((com.sachin.tradeengine.ws.Ping) getTarget()).ping
    (myPing_Type.getDate_1());
    ^
    1 error
    04/03/23 17:17:35 Notification ==&gt; Application Deployer for Sachin-TradingEngineWS-WS FAILED: java.lang.InstantiationException: Error compiling :E:\Oracle\oc4j1003\j2ee\home\applications\Sachin-TradingEngineWS-WS\WebServices: Syntax error in source [ 2004-03-23T17:17:35.937GMT+05:30 ]
    I read somewhere that the conversion between java to xml datatype and vice versa fails for java.util.Date, so it is better to use java.util.Calendar. When I change the code to return a java.util.Calendar then the JDeveloper prompts me the following failure:
    Method Ping: the following parameter types do not have an XML Schema mapping and/or serializer specified : java.util.Calendar.
    This forces me to return a String data.
    I would appreciate if someone can help me out.
    Thanks
    Sachin Mathias
    Datamatics Ltd.

    Hi
    I got the web service working with some work around. But I am not sure it this approach would be right and good.
    I started altogether afresh. I did the following step :
    1. Created an Interface (Ping.java) for use in web Service as follows :
    public interface Ping extends Remote{
    public java.util.Date ping(java.util.Date pingDateRequest)
    throws RemoteException;
    2. Implemented the above interface in PingImpl.java as follows :
    public class PingImpl implements Ping
    public java.util.Date ping(java.util.Date pingDateRequest) throws RemoteException {
    System.out.println("PingImpl: ping() return datetime = " + pingDateRequest.toString());
    return pingDateRequest;
    3. Compiled the above 2 java files.
    4. Generated a Stateless Java Web Service with the help of JDeveloper. This time the generation was sucessful.(If I had "java.util.Calendar" in place of "java.util.Date" in the java code of the above mentioned files the web service generation would prompt me for error)
    5. After the generation of Web Service, I made modification to the Ping interface and its implementing class. In both the files I replaced "java.util.Date" with "java.util.Calendar". The modified java will look as follows :
    Ping.Java
    =========
    public interface Ping extends Remote{
    public java.util.Calendar ping(java.util.Calendar pingDateRequest)
    throws RemoteException;
    PingImpl.Java
    ================
    public class PingImpl implements Ping
    public java.util.Calendar ping(java.util.Calendar pingDateRequest) throws RemoteException {
    System.out.println("PingImpl: ping() return datetime = " + pingDateRequest.toString());
    return pingDateRequest;
    6. Now I recompile both the java files.
    7. Withour regenerating the Web Service I deploy the Web Service on OC4j 10.0.3 from JDeveloper. This time the deployment was sucessful.(The Deployment fails if I don't follow the step 5.)
    8. Now I generated a Stub from JDeveloper and accessed the stub from a client. It works fine. Here if you see the Stub code it takes java.util.Date as a parameter and returns a java.util.Date. (Mind you I am accepting a java.util.Calendar and returning the same in my Web Service interface. Step 5)
    The confusing thing is the Serialization and Deserialization of Data from Client java data to Soap message and Soap message to Server java data.
    From Client to SOAP :
    java.util.Date to datetime
    From SOAP to Server :
    datetime to java.util.Calendar
    From Server to SOAP :
    java.util.Calendar to datetime
    From SOAP to Client :
    datetime to java.util.Date (I am not able to understand this part of the conversion)
    Any help or inputs would be appreciated.
    Thanks
    Sachin Mathias

  • Error on deploying a Web Service on 9iAS release 2

    Hi, somebody could help me on deploying a Web Service on 9iAS release 2?, I have applied the UDDI patch through the orauddi.zip file downloaded from otn web site. But on the J2EE Web Service Deploying Wizard (OEM Web Site), at the Web Service configuration stage, a message is displayed telling me that a Web Service must be deployed if the 9iAS instance which has an infrastructure connection, and this is not my case (I don't want to install the infrastructure. The UDDISYS schema was installed on a simple 9i DB release 2 successfully and for the orauddi application deployed I had created a Data Source for this user).
    On trying to do the same task from JDeveloper 9.0.3, an error ADM is displayed advincing the searching of errors in the log.xml file located on IAS_HOME/dcm/logs directory. Below I have copy the last part of this file, corresponding to the error day.
    <MESSAGE>
    <HEADER>
    <TSTZ_ORIGINATING>2003-07-22T00:27:55.182-03:00</TSTZ_ORIGINATING>
    <COMPONENT_ID>iAS_dcm</COMPONENT_ID>
    <MSG_TYPE TYPE="ERROR"></MSG_TYPE>
    <MSG_GROUP>n/a</MSG_GROUP>
    <MSG_LEVEL>1</MSG_LEVEL>
    <HOST_ID>preventas-ntbk</HOST_ID>
    <HOST_NWADDR>192.168.1.78</HOST_NWADDR>
    <MODULE_ID>oracle/defaultLogger/ExceptionLogger</MODULE_ID>
    <PROCESS_ID>null-Thread[main,5,main]</PROCESS_ID>
    <USER_ID>administrator</USER_ID>
    </HEADER>
    <PAYLOAD>
    <MSG_TEXT>[TM] Config/LoadEdit/ImportExport Adapter resync error</MSG_TEXT>
    <SUPPL_DETAIL><![CDATA[java.lang.NullPointerException
         at oracle.ias.sysmgmt.repository.datastore.DataStore.getOutOfSyncPluginConfigData(Unknown Source)
         at oracle.ias.sysmgmt.repository.RepositoryImpl.syncUpFromPersistence(Unknown Source)
         at oracle.ias.sysmgmt.configsvc.ConfigurationServiceImpl.syncUp(Unknown Source)
         at oracle.ias.sysmgmt.task.ConfigAdapter.resync(Unknown Source)
         at oracle.ias.sysmgmt.task.TaskMaster.resync(Unknown Source)
         at oracle.ias.sysmgmt.task.TaskMaster.resync(Unknown Source)
         at oracle.ias.sysmgmt.task.InstanceManager.sysInit(Unknown Source)
         at oracle.ias.sysmgmt.task.InstanceManager.init(Unknown Source)
         at oracle.ias.sysmgmt.cmdline.DcmCmdLine.execute(Unknown Source)
         at oracle.ias.sysmgmt.cmdline.DcmCmdLine.main(Unknown Source)
    ]]></SUPPL_DETAIL>
    </PAYLOAD>
    </MESSAGE>
    <MESSAGE>
    <HEADER>
    <TSTZ_ORIGINATING>2003-07-22T00:27:56.644-03:00</TSTZ_ORIGINATING>
    <COMPONENT_ID>iAS_dcm</COMPONENT_ID>
    <MSG_TYPE TYPE="ERROR"></MSG_TYPE>
    <MSG_GROUP>n/a</MSG_GROUP>
    <MSG_LEVEL>1</MSG_LEVEL>
    <HOST_ID>preventas-ntbk</HOST_ID>
    <HOST_NWADDR>192.168.1.78</HOST_NWADDR>
    <MODULE_ID>oracle/defaultLogger/ExceptionLogger</MODULE_ID>
    <PROCESS_ID>null-Thread[main,5,main]</PROCESS_ID>
    <USER_ID>administrator</USER_ID>
    </HEADER>
    <PAYLOAD>
    <MSG_TEXT>[ RM ] Exception in repository API getDBConnect()</MSG_TEXT>
    <SUPPL_DETAIL><![CDATA[oracle.ias.repository.schema.SchemaException: Unable to connect to Directory Server:javax.naming.CommunicationException: localhost:389 [Root exception is java.net.ConnectException: Connection refused: connect]
         at oracle.ias.repository.directory.DirectoryReader.connect(DirectoryReader.java:104)
         at oracle.ias.repository.IASSchema.getDBConnect(IASSchema.java:331)
         at oracle.ias.repository.IASSchema.getDBConnect(IASSchema.java:416)
         at oracle.ias.repository.SchemaManager.getDBConnect(SchemaManager.java:197)
         at oracle.ias.sysmgmt.persistence.SeedDbAccess.getDBConnect(Unknown Source)
         at oracle.ias.sysmgmt.persistence.PersistenceManager.getSeedInfo(Unknown Source)
         at oracle.ias.sysmgmt.persistence.PersistenceManager.isDBConfigured(Unknown Source)
         at oracle.ias.sysmgmt.task.InstanceManager.sysInit(Unknown Source)
         at oracle.ias.sysmgmt.task.InstanceManager.init(Unknown Source)
         at oracle.ias.sysmgmt.cmdline.DcmCmdLine.execute(Unknown Source)
         at oracle.ias.sysmgmt.cmdline.DcmCmdLine.main(Unknown Source)
    ]]></SUPPL_DETAIL>
    </PAYLOAD>
    </MESSAGE>
    But, I can deploy this Web Service in the OC4J embedded on JDeveloper, successfully (from JDeveloper). Any idea?
    Thanks a lot in advance,
    Pablo.

    Because you do not have an infrastructure database, you will not be able to deploy your web service from OEM as one of its steps is to register the service in the UDDI registy - the Web service deployment and UDDI registration are tied tightly together in OEM right now.
    All is not lost, however. You have two routes to deploy the Web Service on Oracle9iAS:
    1. Use DCM, which is the command line interface to deploy applications/webservices/wars/ears on Oracle9iAS. It does not have the dependency on UDDI.
    To deploy a Web service using DCM, say your Web service ear file were named test.ear your deployment command would look something like:
    c:\oracle\ora903\dcm\bin\dcmctl deployApplication -file test.ear
    See the doc for much more detail to let you tailor DCM to do all the stuff that is available through EM or specific to your application:
    http://download-west.oracle.com/docs/cd/A97329_03/core.902/a92171/dcm.htm#643834
    2. In JDeveloper 9.0.3, there is a DCM Servlet that lets you do remote deployment to Oracle9iAS:
    http://otn.oracle.com/products/jdev/htdocs/readme_9031.html#viadcm
    I suspect your deployment problem from Oracle9i JDeveloper may be (this may be an incorrect assumption) due to trying to use a connection that is setup as if Oracle9iAS is a standalone OC4J.
    Mike.

  • Web Service with Drop Down Lists for database selections

    Hello,
    I want to define a Web Service with the JDeveloper which can do the following.
    I´ve got a database table with several columns which represents a customer adress and name.
    On a WebSite I like to have three Drop Down Lists to search in that table. The first list should include the field "name". When I select a name there the second list should show all streets (field "street") where people with the selected name live. When I select the street the third list should show me the house numbers (field "hn") of the customers with the selected name and street.
    What have I to do to define a application, a project and so on?
    Many Thanks!

    Hello,
    This question is not directly related to Web Services, since in this case you can consider that the Web Service is your "model" providing data to your view (JSP). One of the question I would like to ask you is: why do you want to use a Web Service to do that? and how you want to deploy this?
    In a general manner, if you use Web Service it is to be able to reuse the business logic in other projects, so based on this statement I would create a specific project that will contain you "model" so all your services.
    The to consume it from your JSP you have different ways:
    - create a Java proxy, or use @WebServiceRef to call the client
    - use Javascript to call the service directly from the HTML page, take a look to the Oracle Web Service endpoint page, where you can see some Javascript stub links.
    Please give more details about your project and needs and I will try to give you a proper answer.
    Regards
    Tugdual Grall

  • Web services with servicegen i Weblogic 7

    I am trying to create web services with Weblogic's tool servicegen and
    ANT. It works great until I have a web service method that return a PK
    class of an EJB. I get the error "Error: bean property and public
    field found with the same name: id" (full stacktrace below). After
    some investigating I found out that it was my PK class that was the
    bad guy. But my PK class MUST have the field "id" public, otherwise
    ejbc complains...
    Am I doing anything wrong or does anyone have a solution?
    /Weasel
    webservices:
    [servicegen] Generating service "HelloWorldEJB" ...
    [servicegen] Generating XML types and serializers from ejb-jar
    (E:\java\projects\CMP20CMR-xdoclet\build\ejb\weblogic-ejb\samples-ejb.jar)
    [servicegen] weblogic.xml.schema.binding.BindingException: Error: bean
    property and public field found with the same name: id
    [servicegen]      at weblogic.ant.taskdefs.webservices.autotype.AutoTypeTask.execute(AutoTypeTask.java:356)
    [servicegen]      at weblogic.ant.taskdefs.webservices.servicegen.ServiceGenTask.generateService(ServiceGenTask.java:248)
    [servicegen]      at weblogic.ant.taskdefs.webservices.servicegen.ServiceGenTask.execute(ServiceGenTask.java:141)
    [servicegen]      at org.apache.tools.ant.Task.perform(Task.java)
    [servicegen]      at org.apache.tools.ant.Target.execute(Target.java)
    [servicegen]      at org.apache.tools.ant.Target.performTasks(Target.java)
    [servicegen]      at org.apache.tools.ant.Project.executeTarget(Project.java)
    [servicegen]      at org.apache.tools.ant.Project.executeTargets(Project.java)
    [servicegen]      at org.apache.tools.ant.Main.runBuild(Main.java)
    [servicegen]      at org.apache.tools.ant.Main.start(Main.java)
    [servicegen]      at org.apache.tools.ant.Main.main(Main.java)
    [servicegen] --- Nested Exception ---
    [servicegen] weblogic.xml.schema.binding.BindingException: Error: bean
    property and public field found with the same name: id
    [servicegen]      at weblogic.ant.taskdefs.webservices.autotype.ComponentAutoTyper.mapComponent(ComponentAutoTyper.java:157)
    [servicegen]      at weblogic.ant.taskdefs.webservices.autotype.EJBAutoTyper.run(EJBAutoTyper.java:100)
    [servicegen]      at weblogic.ant.taskdefs.webservices.autotype.AutoTypeTask.execute(AutoTypeTask.java:350)
    [servicegen]      at weblogic.ant.taskdefs.webservices.servicegen.ServiceGenTask.generateService(ServiceGenTask.java:248)
    [servicegen]      at weblogic.ant.taskdefs.webservices.servicegen.ServiceGenTask.execute(ServiceGenTask.java:141)
    [servicegen]      at org.apache.tools.ant.Task.perform(Task.java)
    [servicegen]      at org.apache.tools.ant.Target.execute(Target.java)
    [servicegen]      at org.apache.tools.ant.Target.performTasks(Target.java)
    [servicegen]      at org.apache.tools.ant.Project.executeTarget(Project.java)
    [servicegen]      at org.apache.tools.ant.Project.executeTargets(Project.java)
    [servicegen]      at org.apache.tools.ant.Main.runBuild(Main.java)
    [servicegen]      at org.apache.tools.ant.Main.start(Main.java)
    [servicegen]      at org.apache.tools.ant.Main.main(Main.java)
    [servicegen] --- Nested Exception ---
    [servicegen] weblogic.xml.schema.binding.BindingException: Error: bean
    property and public field found with the same name: id
    [servicegen]      at weblogic.xml.schema.binding.internal.codegen.JavaInspector.checkForFieldConflict(JavaInspector.java:384)
    [servicegen]      at weblogic.xml.schema.binding.internal.codegen.JavaInspector.addPropertiesToScalar(JavaInspector.java:345)
    [servicegen]      at weblogic.xml.schema.binding.internal.codegen.JavaInspector.fillDescriptor(JavaInspector.java:152)
    [servicegen]      at weblogic.xml.schema.binding.internal.codegen.JavaInspector.getDescriptor(JavaInspector.java:115)
    [servicegen]      at weblogic.xml.schema.binding.internal.codegen.JavaInspector.createDescriptorForClass(JavaInspector.java:90)
    [servicegen]      at weblogic.xml.schema.binding.internal.codegen.Compiler.compile(Compiler.java:121)
    [servicegen]      at weblogic.xml.schema.binding.internal.XSDTypeMappingBuilder.mapClass(XSDTypeMappingBuilder.java:88)
    [servicegen]      at weblogic.xml.schema.binding.internal.XSDTypeMappingBuilder.mapClass(XSDTypeMappingBuilder.java:101)
    [servicegen]      at weblogic.xml.schema.binding.internal.TypeMappingBuilderBase.addMapping(TypeMappingBuilderBase.java:176)
    [servicegen]      at weblogic.ant.taskdefs.webservices.autotype.ComponentAutoTyper.addMapping(ComponentAutoTyper.java:85)
    [servicegen]      at weblogic.ant.taskdefs.webservices.autotype.ComponentAutoTyper.mapComponent(ComponentAutoTyper.java:113)
    [servicegen]      at weblogic.ant.taskdefs.webservices.autotype.EJBAutoTyper.run(EJBAutoTyper.java:100)
    [servicegen]      at weblogic.ant.taskdefs.webservices.autotype.AutoTypeTask.execute(AutoTypeTask.java:350)
    [servicegen]      at weblogic.ant.taskdefs.webservices.servicegen.ServiceGenTask.generateService(ServiceGenTask.java:248)
    [servicegen]      at weblogic.ant.taskdefs.webservices.servicegen.ServiceGenTask.execute(ServiceGenTask.java:141)
    [servicegen]      at org.apache.tools.ant.Task.perform(Task.java)
    [servicegen]      at org.apache.tools.ant.Target.execute(Target.java)
    [servicegen]      at org.apache.tools.ant.Target.performTasks(Target.java)
    [servicegen]      at org.apache.tools.ant.Project.executeTarget(Project.java)
    [servicegen]      at org.apache.tools.ant.Project.executeTargets(Project.java)
    [servicegen]      at org.apache.tools.ant.Main.runBuild(Main.java)
    [servicegen]      at org.apache.tools.ant.Main.start(Main.java)
    [servicegen]      at org.apache.tools.ant.Main.main(Main.java)
    BUILD FAILED
    E:\java\projects\CMP20CMR-xdoclet\script\build.xml:498:
    weblogic.xml.schema.binding.BindingException: Error: bean property and
    public field found with the same name: id

    Web services can only be published to BEA if you install Apache SOAP on BEA and use the Apache SOAP option of JDeveloper. The J2EE Web Services implementation framework is specific to Oracle9iAS.
    The PL/SQL Web Services server implementation is based on the J2EE Web Services option and as a result is not really portable to BEA.
    To publish a PL/SQL Web service on BEA with JDeveloper you would have to write the Java wrapper code to invoke the stored procedure using standard JDBC and then publish that Java class as a Web service using Apache SOAP. Then if you had Apache SOAP installed on BEA you would be set.
    Portability of Web services implementations is a big feature coming with JAX-RPC - currently what most vendors have is interoperability between implementations because of things like SOAPBuilders and WS-I. When JAX-RPC becomes part of J2EE 1.4 roughly in June and vendors start putting out implementations on it you should get closer to portability.
    In the meantime, the easiest way to get portability is to use the same SOAP server on both servers - Apache SOAP is a good example.
    Hope this helps.
    Mike

  • Web service with attachment

    Hi,
    Could anyone tell me hos to call a web service with the message Payload as an SOAP attachment? I´m calling from WAS 6.20 -> XI -> WS using a client proxy, but i can´t understand how the Payload becomes an attahcment?
    Jakob

    Hi,
    Follow the xi forum thread given below to get some information.
    Re: SOAP to SOAP Scenario with an Attachment
    thanks,
    sasi

  • Biztalk 2010 - Consume Web Service with Certificate

    Hi
    I have to consume a java web service with Biztalk that requires authentication via a client certificate. Until now I have not been able to consume any web service where any kind of authentication was needed. Simple web services without authentication are
    no problem. Also using SoapUI works perfectly fine.
    I am generating the XSDs and the port binding with the WCF wizard in VS2010. I've read several comments that it's not possible to consume web services with the WCF-WSHttp adapter when the message format should be SOAP 1.1. Therefore I'm trying with the WCF-BasicHttp
    and WCF-Custom adapters, but I did not suceed in receiving a positive response yet.
    The web service I want to consume uses a client certificate (with a private key) and two root certificates. When I use the BasicHttp adapter I choose either 'Transport' or 'TransportWithMessageCredential' but none of them work. I also have to supply a client
    and a service certificate. I always use the one with the private key for the client but I'm not sure which one I have to use for the service. Is there a possibility that I have to provide both root certificates and if so, how can I achieve this?
    Hope the question makes sense somehow... thanks for any input.
    Error message that I receive currently is that the server needs a client certificate. However I attached it in the send port properties under the tab "Security" => mode "TransportWithMessageCredential".

    Adapter: WCF-Custom
    Binding: customBinding
    Cannot send pictures (yet).
    <configuration>
    <enterpriseLibrary.ConfigurationSource selectedSource="ESB File Configuration Source" />
    <system.serviceModel>
    <client>
    <endpoint address="...." behaviorConfiguration="EndpointBehavior" binding="customBinding" bindingConfiguration="ReceiptBinding" contract="BizTalk" name="WebServicePort" />
    </client>
    <behaviors>
    <endpointBehaviors>
    <behavior name="EndpointBehavior">
    <clientCredentials>
    <clientCertificate findValue="..." x509FindType="FindByThumbprint" />
    <serviceCertificate>
    <defaultCertificate findValue="..." storeLocation="LocalMachine" storeName="AuthRoot" x509FindType="FindByThumbprint" />
    </serviceCertificate>
    </clientCredentials>
    </behavior>
    </endpointBehaviors>
    <serviceBehaviors>
    <behavior name="ServiceBehavior" />
    </serviceBehaviors>
    </behaviors>
    <bindings>
    <customBinding>
    <clear />
    <binding name="ReceiptBinding">
    <textMessageEncoding messageVersion="Soap11" />
    <security authenticationMode="MutualCertificate" />
    <httpsTransport proxyAuthenticationScheme="Basic" requireClientCertificate="true" />
    </binding>
    </customBinding>
    </bindings>
    </system.serviceModel>
    </configuration>

  • ABAP Web Service with tables

    Hello,
    <br>
    <br>
    We need to build a web service with a predefined message in our ERP (ABAP), without PI or WebAS JAVA.
    <br>
    <br>
    We thought it should be a simple task, because we had no problem with many other applications and systems when building the same service, but were not able to build it with SAP ABAP, probably as a consequence of our lack of knowledge on ABAP SOAP runtime.
    <br>
    <br>
    We have an external asynchronous process that delivers information to many other systems using web services (information diffusion). Concecuently, the web service call's structure is determined by the caller, so we have to fulfill this structure if we want to receive the info.
    <br>
    <br>
    The owner of the process defined a very simple service call, in which one kind of  "record" can be repeated 1 to n times:
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    &lt;reglasSuscripcion&gt;
    <br>
                &lt;!Zero or more repetitions:&gt;
    <br>
                   &lt;nombre&gt;?&lt;/nombre&gt;
    <br>
                   &lt;valor&gt;?&lt;/valor&gt;
    <br>
                   &lt;nombre&gt;?&lt;/nombre&gt;
    <br>
                   &lt;valor&gt;?&lt;/valor&gt;
    <br>
                   &lt;nombre&gt;?&lt;/nombre&gt;
    <br>
                   &lt;valor&gt;?&lt;/valor&gt;
    <br>
    <br>
                   &lt;nombre&gt;?&lt;/nombre&gt;
    <br>
                   &lt;valor&gt;?&lt;/valor&gt;
    <br>
    &lt;/reglasSuscripcion&gt;
    <br>
    <br>
    <br>
    In order to receive this info, we have to implement an abap web service handler to accept this kind of call, the same way other applications/systems have already done.
    <br>
    <br>
    We tried to build a RFC function call and create a web service with the wizard and it resulted in a web service with the following WSDL:
    <br>
    <br>
    &lt;soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:sap-com:document:sap:soap:functions:mc-style"&gt;
    <br>
    <br>
    <br>
    <br>
             &lt;reglasSuscripcion&gt;
    <br>
                &lt;!Zero or more repetitions:&gt;
    <br>
                &lt;item&gt;
    <br>
                   &lt;nombre&gt;?&lt;/nombre&gt;
    <br>
                   &lt;valor&gt;?&lt;/valor&gt;
    <br>
                &lt;/item&gt;
    <br>
    <br>
    <br>
    <br>
    &lt;item&gt;
    <br>
                   &lt;nombre&gt;?&lt;/nombre&gt;
    <br>
                   &lt;valor&gt;?&lt;/valor&gt;
    <br>
                &lt;/item&gt;
    <br>
             &lt;/reglasSuscripcion&gt;
    <br>
    <br>
    <br>
    <br>
    We found two main problems:
    <br>
    <br>
    1.- When "wrapping" the RFC as a WS with the wizard, for a table datatype it automatically includes the <item></item> tag, so we break the predefined calling rules.
    <br>
    <br>
    2.- The namespace is fixed by the wizard, and we would like to use a common namespace for all the "susbscribers", logically, the namespace fixed by the information diffusion service.
    <br>
    <br>
    We also tried to find info on the outside-in approach for building a web service from the WSDL, but all the info we found required the ESR and we have no PI, just the ERP.
    <br>
    <br>
    Any ideas on how to proceed?
    <br>
    <br>
    Thanks in advance,
    <br>
    <br>
    Joseba M. Iturbe
    <br>
    <br>
    Edited by: Soporte Desarrollo on Mar 5, 2010 10:56 AM

    #2.  I've recently had to "zap" some namespaces in an ECC5 system because the calling (TIBCO) system didn't appreciate the default SAP "urn" default - something to do with multiple colons in the address.  There were, I think, just three table this affected, all VEP* ones.  I think I should have been able to change these via the virtual interface in SE80 except that the ECC5 code was a bit "light" in this respect, so you may be able to do this now in SOAMANAGER in ECC6 (btw,  I also had to re-save the WS definition within WSCONFIG and re-activate the virtual interfaces after this "zap" to generated the associated handler class again).
    #1. Given your "name / value" pairs represent a complex type, then it might be better practice to have them as "item" which is probably why SAP proposes it this way... what does your custom function module parameter list look like?
    Jonathan

Maybe you are looking for

  • Help on the Transactional BAPI - Writing to R/3 BAPI

    1)I have imported and created Model for a custom BAPI ZPM_CREATE_ORDER and TRANSACTIONAL BAPIs i.e., COMMIT & ROLLBACK bapis. 2)I have mapped the context from Model to Custom Controller and then to View Controller. Also, did the UI Element Binding. 3

  • How can i print out text messages from my iPhone 5

    How to print text messages from iPhone 5

  • Static Static Everywhere

    As soon as I turn on my iPod I can hear a feint static 'snap crackle pop' through the earphones. What I have tried: -I hear the static through both the low-end earphones that came included with the iPod and my high-end Etymotic ER-4P. -The static per

  • Data usage counter

    My provider is Bell in Ontario, Canada. 10 days into my billing cycle I noticed that this month the "unbilled" data usage as tracked by my provide is significantly less (about 100 MB or so) than the data usage tracked by the phone itself in the Setti

  • ODBC for Rdb files dissolve at root directory now

    Late Dec99, I noticed a change in behavior of Oracle Rdb driver installation files. For a couple years, on a Windows 95 PC, when I run the rdbwin95.exe installation program via Start > Run > and specify the -d qualifier, the installation program woul