C# Proxy Classes from SAP WSDL files

We are trying to generate proxy classes for SAP eSOA web services using C# and Visual Studio 2005.
When we try to run Microsoft's proxy class generation utility, WSDL.exe, errors are generated that attribute incorrect syntax to the SAP WSDL file:
> Microsoft (R) Web Services Description Language Utility [Microsoft (R)
> .NET Framework, Version 2.0.50727.42] Copyright (C) Microsoft
> Corporation. All rights reserved.
> Warning: This web reference does not conform to WS-I Basic Profile v1.1.
> R2028, R2029: A DESCRIPTION using the WSDL namespace and the WSDL SOAP
> binding n amespace MUST be valid according to the XML Schemas found at
> http://schemas.xmls oap.org/wsdl/2003-02-11.xsd and http://schemas.xmlsoap.org/wsdl/soap/2003-02-11.
> xsd.
>   -  Warning: The element 'definitions' in namespace
> 'http://schemas.xmlsoap.org /wsdl/' has invalid child element 'properties' in namespace 'urn:com-sap:ifr:v2:
> wsdl'. List of possible elements expected: 'import, types, message,
> portType, bi nding, service' in namespace
> 'http://schemas.xmlsoap.org/wsdl/'. Line 1748, posi tion 4.
>
> SOAP 1.1 binding was not found: WS-I's Basic Profile 1.1 consists of
> implementat ion guidelines that recommend how a set of core Web
> services specifications shou ld be used together to develop
> interoperable Web services. For the 1.1 Profile, those specifications are SOAP 1.1, WSDL 1.1, UDDI 2.0, XML 1.0 and XML Schema.
>
> For more details on the WS-I Basic Profile v1.1, see the specification
> at http://www.ws-i.org/Profiles/BasicProfile-1.1.html.
  The WSDL file is obtained from the SAP ES Workplace, from the following URL:
http://erp.esworkplace.sap.com/socoview(bD1lbiZjPTgwMCZkPW1pbg==)/render.asp?&id=4FFC1A97663611DA36BB000F20DAC9EF&fragID=&packageid=DBBB6D8AA3B382F191E0000F20F64781&iv=
  We have already tried both SAP files available from this location; neither works.
  Any insight you can offer to help us generate these proxy classes is welcome. Note that the SAP PDF file, "ESOA-Roadmap-Workshop.PDF" talks about one syntactic incompatibility with Microsoft WSDL (on page 70), but this solution does not work, and indeed the token 'parameters' does not appear anywhere in either SAP WSDL file for Create Maintenance Request eSOA.
  Thanks for any help you can offer!
-- Julian Mensch

I have the same problem after renaming "parameters" to "parameter" and I'm using the same example ES that's in the document:
http://erp.esworkplace.sap.com/sap/bc/srt/xip/sap/ECC_EMPLOYEEBASICDBYEMPLOYEEQR/version3?sap-client=800&wsdl=1.1
wsdl.exe from .NET Framework 2.0.50727.42 gives me
Microsoft (R) Web Services Description Language Utility
[Microsoft (R) .NET Framework, Version 2.0.50727.42]
Copyright (C) Microsoft Corporation. All rights reserved.
Warning: This web reference does not conform to WS-I Basic Profile v1.1.
SOAP 1.1 binding was not found: WS-I's Basic Profile 1.1 consists of implementat
ion guidelines that recommend how a set of core Web services specifications shou
ld be used together to develop interoperable Web services. For the 1.1 Profile,
those specifications are SOAP 1.1, WSDL 1.1, UDDI 2.0, XML 1.0 and XML Schema.
For more details on the WS-I Basic Profile v1.1, see the specification
at http://www.ws-i.org/Profiles/BasicProfile-1.1.html.
Warning: no classes were generated.
Warnings were encountered. Review generated source comments for more details.
I'm sure it's something really stupid since this example worked at some point for whoever wrote the doc...
It's sad that there is basically no .NET support from the SAP side and apart from a few documents there is basically no developer documentation or samples...

Similar Messages

  • Can't create client proxy classes from WebLogic-generated WSDL file

    We have a web service that we used to generated a WSDL file. We then used clientgen
    to try and create the client proxy classes from the WSDL. This failed. Doesn't
    it seem reasonable that if WebLogic creates a WSDL that WebLogic should also be
    able to consume that WSDL?

    Can you please post the wsdl?
    Regards,
    -manoj
    http://manojc.com
    "Robert" <[email protected]> wrote in message
    news:40db0bc0@mktnews1...
    >
    We have a web service that we used to generated a WSDL file. We then usedclientgen
    to try and create the client proxy classes from the WSDL. This failed.Doesn't
    it seem reasonable that if WebLogic creates a WSDL that WebLogic shouldalso be
    able to consume that WSDL?

  • Error in creating Adaptive Webservice model from local wsdl file

    hi ,
         I am working on Netweaver7.1 CE. I am creating adaptive webservice model from local wsdl file which i have saved at location D:/subordinate WSDL WSDL By Raju/Manager.wsdl on my pc. I am able to bind context , build and deploy. But when i am running that webdynpro project m getting following error
      java.io.FileNotFoundException: /D:/subordinate WSDL WSDL By Raju/Manager.wsdl (No such file or directory)
    com.sap.tc.webdynpro.services.exceptions.WDRuntimeException: Exception was thrown in preprocessing phase of application session ApplicationSession(name=encryptappl.EncryptAppl, id=25f1f2e1a96411dd9d240050569630a5). The causing exception is nested. RID=25ef0cb0a96411dd91ce0050569630a5
      at com.sap.tc.webdynpro.clientserver.session.ClientSession.doPreprocessing(ClientSession.java:650)
      at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:225)
      at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:231)
      at com.sap.tc.webdynpro.serverimpl.core.sessionctx.AbstractExecutionContextDispatcher.delegateToRequestManager(AbstractExecutionContextDispatcher.java:205)
      at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.DispatchHandlerForRequestManager.doService(DispatchHandlerForRequestManager.java:38)
      at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.AbstractDispatchHandler.service(AbstractDispatchHandler.java:116)
      at com.sap.engine.services.servlets_jsp.server.deploy.impl.module.IRequestDispatcherImpl.dispatch(IRequestDispatcherImpl.java:93)
      at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.ExecutionContextDispatcher.dispatchToRequestManager(ExecutionContextDispatcher.java:140)
      at com.sap.tc.webdynpro.serverimpl.core.sessionctx.AbstractExecutionContextDispatcher.dispatch(AbstractExecutionContextDispatcher.java:93)
      at com.sap.tc.webdynpro.serverimpl.core.sessionctx.AbstractExecutionContextDispatcher.dispatch(AbstractExecutionContextDispatcher.java:105)
      at com.sap.tc.webdynpro.serverimpl.core.AbstractDispatcherServlet.doContent(AbstractDispatcherServlet.java:87)
      at com.sap.tc.webdynpro.serverimpl.core.AbstractDispatcherServlet.doGet(AbstractDispatcherServlet.java:54)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      at com.sap.engine.services.servlets_jsp.server.Invokable.invoke(Invokable.java:66)
      at com.sap.engine.services.servlets_jsp.server.Invokable.invoke(Invokable.java:32)
      at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:431)
      at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:289)
      at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:387)
      at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:376)
      at com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:85)
      at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:71)
      at com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:160)
      at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:71)
      at com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:67)
      at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
      at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:71)
      at com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)
      at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
      at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:71)
      at com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)
      at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
      at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:71)
      at com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)
      at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
      at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:71)
      at com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:309)
      at com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.run(Processor.java:222)
      at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
      at java.security.AccessController.doPrivileged(Native Method)
      at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:152)
      at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:247)
    Caused by: com.sap.tc.webdynpro.model.webservice.exception.WSModelRuntimeException: Exception on creation of service metadata for WSDL URL 'file:/D:/subordinate WSDL By Raju/Manager.wsdl' and service factory configuration 'null'
      at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.getOrCreateWsrService(WSModelInfo.java:422)
      at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.readOperationsFromWSDL(WSModelInfo.java:372)
      at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.importMetadataInternal(WSModelInfo.java:342)
      at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.importMetadata(WSModelInfo.java:326)
      at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo$Cache.getModelInfo(WSModelInfo.java:199)
      at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.getModelInfoFromCacheOrCreate(WSModelInfo.java:1034)
      at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.getModelInfoFromCacheOrCreate(WSModelInfo.java:248)
      at com.sap.tc.webdynpro.model.webservice.gci.WSTypedModel.<init>(WSTypedModel.java:41)
      at com.apl.model.manager.Manager.<init>(Manager.java:44)
      at encryptappl.comp.EncryptApplComp.wdDoInit(EncryptApplComp.java:112)
      at encryptappl.comp.wdp.InternalEncryptApplComp.wdDoInit(InternalEncryptApplComp.java:126)
      at com.sap.tc.webdynpro.progmodel.generation.DelegatingComponent.doInit(DelegatingComponent.java:160)
      at com.sap.tc.webdynpro.progmodel.controller.Controller.initController(Controller.java:230)
      at com.sap.tc.webdynpro.progmodel.components.Component.initController(Component.java:249)
      at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:209)
      at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.init(ClientApplication.java:513)
      at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.doPreprocessing(ClientApplication.java:1228)
      at com.sap.tc.webdynpro.serverimpl.core.sessionctx.AbstractExecutionContextDispatcher.delegateToApplicationDoPreprocessing(AbstractExecutionContextDispatcher.java:150)
      at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.DispatchHandlerForAppPreprocessing.doService(DispatchHandlerForAppPreprocessing.java:35)
      at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.AbstractDispatchHandler.service(AbstractDispatchHandler.java:116)
      at com.sap.engine.services.servlets_jsp.server.deploy.impl.module.IRequestDispatcherImpl.dispatch(IRequestDispatcherImpl.java:93)
      at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.ExecutionContextDispatcher.dispatchToApplicationDoPreprocessing(ExecutionContextDispatcher.java:100)
      at com.sap.tc.webdynpro.serverimpl.core.sessionctx.AbstractExecutionContextDispatcher.dispatch(AbstractExecutionContextDispatcher.java:75)
      at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.dispatch(ApplicationSession.java:507)
      at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.dispatch(ApplicationSession.java:527)
      at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doPreprocessing(ApplicationSession.java:233)
      at com.sap.tc.webdynpro.clientserver.session.ClientSession.doPreprocessing(ClientSession.java:647)
      ... 41 more
    Caused by: com.sap.engine.services.webservices.jaxrpc.exceptions.WebserviceClientException: GenericServiceFactory initialization problem. [Problem with WSDL file parsing. See nested message.]
      at com.sap.engine.services.webservices.espbase.client.dynamic.GenericServiceFactory.createService_NewInstance(GenericServiceFactory.java:247)
      at com.sap.engine.services.webservices.espbase.client.dynamic.GenericServiceFactory.createService_NewInstance(GenericServiceFactory.java:131)
      at com.sap.engine.services.webservices.espbase.client.dynamic.GenericServiceFactory.createService(GenericServiceFactory.java:124)
      at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.getOrCreateWsrService(WSModelInfo.java:420)
      ... 67 more
    Caused by: com.sap.engine.services.webservices.jaxrpc.exceptions.ProxyGeneratorException: Problem with WSDL file parsing. See nested message.
      at com.sap.engine.services.webservices.espbase.client.ProxyGeneratorNew.loadWSDLapi(ProxyGeneratorNew.java:585)
      at com.sap.engine.services.webservices.espbase.client.ProxyGeneratorNew.generateAll(ProxyGeneratorNew.java:341)
      at com.sap.engine.services.webservices.espbase.client.dynamic.impl.DGenericServiceImpl.loadProxy(DGenericServiceImpl.java:130)
      at com.sap.engine.services.webservices.espbase.client.dynamic.impl.DGenericServiceImpl.<init>(DGenericServiceImpl.java:65)
      at com.sap.engine.services.webservices.espbase.client.dynamic.GenericServiceFactory.createService_NewInstance(GenericServiceFactory.java:240)
      ... 70 more
    Caused by: com.sap.engine.services.webservices.espbase.wsdl.exceptions.WSDLException: /D:/subordinate WSDL By Raju/Manager.wsdl (No such file or directory)
      at com.sap.engine.services.webservices.espbase.wsdl.WSDLLoader.loadDOMDocument(WSDLLoader.java:140)
      at com.sap.engine.services.webservices.espbase.wsdl.WSDLLoader.load(WSDLLoader.java:91)
      at com.sap.engine.services.webservices.espbase.wsdl.WSDLLoader.load(WSDLLoader.java:80)
      at com.sap.engine.services.webservices.espbase.client.ProxyGeneratorNew.loadWSDLapi(ProxyGeneratorNew.java:579)
      ... 74 more
    Caused by: java.io.FileNotFoundException: /D:/subordinate WSDL By Raju/Manager.wsdl (No such file or directory)
      at java.io.FileInputStream.open(Native Method)
      at java.io.FileInputStream.<init>(FileInputStream.java:106)
      at java.io.FileInputStream.<init>(FileInputStream.java:66)
      at sun.net.www.protocol.file.FileURLConnection.connect(FileURLConnection.java:70)
      at sun.net.www.protocol.file.FileURLConnection.getInputStream(FileURLConnection.java:161)
      at java.net.URL.openStream(URL.java:1007)
      at com.sap.engine.lib.xml.parser.AbstractXMLParser.parse(AbstractXMLParser.java:201)
      at com.sap.engine.lib.xml.parser.AbstractXMLParser.parse(AbstractXMLParser.java:263)
      at com.sap.engine.lib.xml.parser.Parser.parse_DTDValidation(Parser.java:282)
      at com.sap.engine.lib.xml.parser.Parser.parse(Parser.java:293)
      at com.sap.engine.lib.xml.parser.DOMParser.parse(DOMParser.java:101)
      at com.sap.engine.lib.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:127)
      at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:146)
      at com.sap.engine.services.webservices.espbase.wsdl.WSDLLoader.loadDOMDocument(WSDLLoader.java:132)
      ... 77 more

    hi ,
    i tried to create model using url in address tab , but i am getting  error. This webservice is having authentication ,is this error bcoz of authentication????
    I am posting error below
    com.sap.tc.webdynpro.model.webservice.exception.WSModelRuntimeException: Exception on creation of service metadata for WSDL URL 'http://172.25.30.195:80/WebService/WebServiceApp.nsf/wsGetSuperior?OpenAgent' and service factory configuration '{DynamicProxy.ClassPath=D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.tc.cmi_10.0.0.080222130515/lib/com.sap.tc.cmi_api.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.exception_2.0.0.080222130515/lib/sap.comtcexceptionimpl.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.engine.webservices_2.0.0.080222130515/lib/sap.comtcblbasewebservices_libimpl.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.engine.webservices_2.0.0.080222130515/lib/sap.comtcbliqlibimpl.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.engine.webservices_2.0.0.080222130515/lib/sap.comtcbljkernel_bootimpl.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.engine.webservices_2.0.0.080222130515/lib/sap.comtcbljkernel_utilimpl.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.engine.webservices_2.0.0.080222130515/lib/sap.comtcjewebservices_apiimpl.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.engine.webservices_2.0.0.080222130515/lib/sap.comtcjewebservices_libimpl.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.engine.webservices_2.0.0.080222130515/lib/sap.comtcjewebservicesimpl.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.engine.webservices_2.0.0.080222130515/lib/sap.comtcsecwssecclientimpl.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.engine.webservices_2.0.0.080222130515/lib/sap.comtcsecwsseclibimpl.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.engine.webservices_2.0.0.080222130515/lib/sap.comtcsecwssecsrtlibimpl.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.dictionary.runtime_10.0.0.080222130515/lib/com.sap.dictionary.runtime.mod_api.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.dictionary.runtime_10.0.0.080222130515/lib/com.sap.dictionary.runtime.mod_core.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.dictionary.runtime_10.0.0.080222130515/lib/dictionary_mdi_util_api.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.dictionary.runtime_10.0.0.080222130515/lib/dictionary_mdi_util_core.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.dictionary.runtime_10.0.0.080222130515/lib/dictionary_runtime_mdi_api.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.dictionary.runtime_10.0.0.080222130515/lib/dictionary_runtime_mdi_core.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.dictionary.services_10.0.0.080118105715/lib/com.sap.dictionary.services_api.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.tssap.sap.libs.logging_2.0.0.080222130515/lib/sap.comtcloggingjavaimpl.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.tssap.sap.libs.xmltoolkit_2.0.0.080222130515/lib/sap.comtcsapxmltoolkitsapxmltoolkit.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.ext.libs.webservices_2.0.0.080222130515/lib/activation.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.ext.libs.webservices_2.0.0.080222130515/lib/jaxm-api.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.ext.libs.webservices_2.0.0.080222130515/lib/jaxrpc-api.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.ext.libs.webservices_2.0.0.080222130515/lib/jnet.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.ext.libs.webservices_2.0.0.080222130515/lib/jsse.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.ext.libs.webservices_2.0.0.080222130515/lib/mail.jar;D:/Program Files/SAP/IDE/CE/eclipse/plugins/com.sap.ext.libs.webservices_2.0.0.080222130515/lib/saaj-api.jar;, DynamicProxy.HTTPPassword=, DynamicProxy.HTTPUserName=, DynamicProxy.Javac.path=D:\Program Files\java\jdk1.5.0_12\bin\javac, DynamicProxy.TempDir=C:\DOCUME1\kavita\LOCALS~1\Temp\}'
         at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.getOrCreateWsrService(WSModelInfo.java:414)
         at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.readOperationsFromWSDL(WSModelInfo.java:372)
         at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.importMetadataInternal(WSModelInfo.java:342)
         at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.importMetadata(WSModelInfo.java:306)
         at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.importMetadata(WSModelInfo.java:316)
         at com.sap.tc.webdynpro.model.webservice.modeltype.importer.ui.PageAWSRename.loadNameSpacesAndModelClasses(PageAWSRename.java:996)
         at com.sap.tc.webdynpro.model.webservice.modeltype.importer.ui.PageAWSLocalFileClient$5$1.run(PageAWSLocalFileClient.java:283)
         at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
         at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:123)
         at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3659)
         at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3296)
         at org.eclipse.jface.operation.ModalContext$ModalContextThread.block(ModalContext.java:158)
         at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:326)
         at org.eclipse.jface.wizard.WizardDialog.run(WizardDialog.java:934)
         at com.sap.tc.webdynpro.model.webservice.modeltype.importer.ui.PageAWSLocalFileClient.getNextPage(PageAWSLocalFileClient.java:299)
         at org.eclipse.jface.wizard.WizardDialog.nextPressed(WizardDialog.java:813)
         at com.sap.ide.cmi.core.internal.newmodelwizard.NewModelWizardDialog.nextPressed(NewModelWizardDialog.java:66)
         at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:369)
         at com.sap.ide.cmi.core.internal.newmodelwizard.NewModelWizardDialog.buttonPressed(NewModelWizardDialog.java:88)
         at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:616)
         at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:227)
         at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
         at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:938)
         at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3682)
         at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3293)
         at org.eclipse.jface.window.Window.runEventLoop(Window.java:820)
         at org.eclipse.jface.window.Window.open(Window.java:796)
         at com.sap.ide.cmi.core.internal.services.CreationServiceUI.createModel(CreationServiceUI.java:76)
         at com.sap.ide.cmi.core.browser.actions.CreateModelAction.run(CreateModelAction.java:60)
         at com.sap.ide.tools.core.viewerfwk.internal.actions.BaseSelectionSingleAction.run(BaseSelectionSingleAction.java:39)
         at com.sap.ide.tools.core.viewerfwk.internal.actions.BaseSelectionAction.runInternal(BaseSelectionAction.java:78)
         at com.sap.ide.tools.core.viewerfwk.internal.actions.BaseSelectionAction.run(BaseSelectionAction.java:70)
         at org.eclipse.ui.actions.BaseSelectionListenerAction.runWithEvent(BaseSelectionListenerAction.java:168)
         at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:545)
         at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:490)
         at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:402)
         at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
         at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:938)
         at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3682)
         at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3293)
         at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2389)
         at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
         at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2219)
         at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466)
         at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289)
         at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:461)
         at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
         at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:106)
         at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:153)
         at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106)
         at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76)
         at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363)
         at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:504)
         at org.eclipse.equinox.launcher.Main.basicRun(Main.java:443)
         at org.eclipse.equinox.launcher.Main.run(Main.java:1169)
         at org.eclipse.equinox.launcher.Main.main(Main.java:1144)
    Caused by: com.sap.engine.services.webservices.jaxrpc.exceptions.WebserviceClientException: GenericServiceFactory initialization problem. [Problem with WSDL file parsing. See nested message.]
         at com.sap.engine.services.webservices.espbase.client.dynamic.GenericServiceFactory.createService_NewInstance(GenericServiceFactory.java:247)
         at com.sap.engine.services.webservices.espbase.client.dynamic.GenericServiceFactory.createService_NewInstance(GenericServiceFactory.java:91)
         at com.sap.engine.services.webservices.espbase.client.dynamic.GenericServiceFactory.createService(GenericServiceFactory.java:84)
         at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.getOrCreateWsrService(WSModelInfo.java:412)
         ... 60 more
    Caused by: com.sap.engine.services.webservices.jaxrpc.exceptions.ProxyGeneratorException: Problem with WSDL file parsing. See nested message.
         at com.sap.engine.services.webservices.espbase.client.ProxyGeneratorNew.loadWSDLapi(ProxyGeneratorNew.java:585)
         at com.sap.engine.services.webservices.espbase.client.ProxyGeneratorNew.generateAll(ProxyGeneratorNew.java:341)
         at com.sap.engine.services.webservices.espbase.client.dynamic.impl.DGenericServiceImpl.loadProxy(DGenericServiceImpl.java:130)
         at com.sap.engine.services.webservices.espbase.client.dynamic.impl.DGenericServiceImpl.<init>(DGenericServiceImpl.java:65)
         at com.sap.engine.services.webservices.espbase.client.dynamic.GenericServiceFactory.createService_NewInstance(GenericServiceFactory.java:240)
         ... 63 more
    Caused by: com.sap.engine.services.webservices.espbase.wsdl.exceptions.WSDLException: Fatal Error: com.sap.engine.lib.xml.parser.ParserException: XMLParser: Bad Attribute value: ' or " expected!(http://172.25.30.195:80/WebService/WebServiceApp.nsf/wsGetSuperior?OpenAgent, row:3, col:96)
         at com.sap.engine.services.webservices.espbase.wsdl.WSDLLoader.loadDOMDocument(WSDLLoader.java:140)
         at com.sap.engine.services.webservices.espbase.wsdl.WSDLLoader.load(WSDLLoader.java:91)
         at com.sap.engine.services.webservices.espbase.wsdl.WSDLLoader.load(WSDLLoader.java:80)
         at com.sap.engine.services.webservices.espbase.client.ProxyGeneratorNew.loadWSDLapi(ProxyGeneratorNew.java:579)
         ... 67 more
    Caused by: com.sap.engine.lib.xml.parser.NestedSAXParserException: Fatal Error: com.sap.engine.lib.xml.parser.ParserException: XMLParser: Bad Attribute value: ' or " expected!(http://172.25.30.195:80/WebService/WebServiceApp.nsf/wsGetSuperior?OpenAgent, row:3, col:96)(http://172.25.30.195:80/WebService/WebServiceApp.nsf/wsGetSuperior?OpenAgent, row=3, col=96) -> com.sap.engine.lib.xml.parser.ParserException: XMLParser: Bad Attribute value: ' or " expected!(http://172.25.30.195:80/WebService/WebServiceApp.nsf/wsGetSuperior?OpenAgent, row:3, col:96)
         at com.sap.engine.lib.xml.parser.DOMParser.parse(DOMParser.java:139)
         at com.sap.engine.lib.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:127)
         at com.sap.engine.services.webservices.espbase.wsdl.WSDLLoader.loadDOMDocument(WSDLLoader.java:130)
         ... 70 more
    Caused by: com.sap.engine.lib.xml.parser.ParserException: XMLParser: Bad Attribute value: ' or " expected!(http://172.25.30.195:80/WebService/WebServiceApp.nsf/wsGetSuperior?OpenAgent, row:3, col:96)
         at com.sap.engine.lib.xml.parser.XMLParser.scanAttValue(XMLParser.java:1402)
         at com.sap.engine.lib.xml.parser.XMLParser.scanAttList(XMLParser.java:1576)
         at com.sap.engine.lib.xml.parser.XMLParser.scanElement(XMLParser.java:1719)
         at com.sap.engine.lib.xml.parser.XMLParser.scanContent(XMLParser.java:2449)
         at com.sap.engine.lib.xml.parser.XMLParser.scanElement(XMLParser.java:1848)
         at com.sap.engine.lib.xml.parser.XMLParser.scanContent(XMLParser.java:2449)
         at com.sap.engine.lib.xml.parser.XMLParser.scanElement(XMLParser.java:1848)
         at com.sap.engine.lib.xml.parser.XMLParser.scanContent(XMLParser.java:2449)
         at com.sap.engine.lib.xml.parser.XMLParser.scanElement(XMLParser.java:1848)
         at com.sap.engine.lib.xml.parser.XMLParser.scanContent(XMLParser.java:2449)
         at com.sap.engine.lib.xml.parser.XMLParser.scanElement(XMLParser.java:1848)
         at com.sap.engine.lib.xml.parser.XMLParser.scanDocument(XMLParser.java:2852)
         at com.sap.engine.lib.xml.parser.XMLParser.parse0(XMLParser.java:229)
         at com.sap.engine.lib.xml.parser.AbstractXMLParser.parseAndCatchException(AbstractXMLParser.java:145)
         at com.sap.engine.lib.xml.parser.AbstractXMLParser.parse(AbstractXMLParser.java:160)
         at com.sap.engine.lib.xml.parser.AbstractXMLParser.parse(AbstractXMLParser.java:261)
         at com.sap.engine.lib.xml.parser.Parser.parse_DTDValidation(Parser.java:282)
         at com.sap.engine.lib.xml.parser.Parser.parse(Parser.java:293)
         at com.sap.engine.lib.xml.parser.DOMParser.parse(DOMParser.java:101)
         ... 72 more

  • Creating a webservice adapter from a wsdl file that uses Basic Auth.

    Hi all,
    I having problems generating a webservice adapter from a wsdl file that another company has created (read: I cannot change it). It is protected with Basic Authentication.
    I have read other forums posts like http://forums.oracle.com/forums/thread.jspa?messageID=9374940&#9374940 where it describes how to add credentials after one has created a webserviceadapter.
    My problem is actually generating the proxy from the wsdl file. I get a 401 when I try to generate it using the wizard. That's due to JDeveloper not allowing me to type in the username/password. So my question is, how does one do that?
    I'm using JDeveloper 11gR1 ...4.0
    Thanks!
    William

    Hi all,
    I having problems generating a webservice adapter from a wsdl file that another company has created (read: I cannot change it). It is protected with Basic Authentication.
    I have read other forums posts like http://forums.oracle.com/forums/thread.jspa?messageID=9374940&#9374940 where it describes how to add credentials after one has created a webserviceadapter.
    My problem is actually generating the proxy from the wsdl file. I get a 401 when I try to generate it using the wizard. That's due to JDeveloper not allowing me to type in the username/password. So my question is, how does one do that?
    I'm using JDeveloper 11gR1 ...4.0
    Thanks!
    William

  • How can I call a ABAP proxy class from BADI? PLease help

    hi Experts,
        I have a scenario where I have to call a ABAP proxy class from a BADI. How can I do this? Does anybody has sample code for the same?
    Please help.
    Thanks
    Gopal

    Hi,
       You can call a method of a class from BADI. Here are the steps.
       1) In the BADI implementation create a object for the proxy class.
       2) Call the Execute_Synchronous method.
        You can define a BADI by using SE18 and you can implement it by using SE19.
    Sample code...
    ================================================
      METHOD ZIF_EX_VBADI~CONVERTUPPER.
      DATA: OBJ TYPE REF TO ZTESTCLASS.
      DATA: IT_DATA  TYPE ZIN_MT,
                IT_RES   TYPE ZOUT_MT,
                SEXCEPTION TYPE REF TO CX_AI_SYSTEM_FAULT.
      TRY.
          CREATE OBJECT OBJ
             EXPORTING
                 LOGICAL_PORT_NAME = 'TESTPORT'.
      CATCH CX_AI_SYSTEM_FAULT INTO SEXCEPTION.
      ENDTRY.
    ENDMETHOD.
    ================================================
    Thanks,
    Vivek LR

  • How to call a ABAP proxy class from a BADI? Please help!

    hi Experts,
        I have a scenario where I have to call a ABAP proxy class from a BADI. How can I do this? Does anybody has sample code for the same?
    Please help.
    Thanks
    Gopal

    Hi Gopal,
    Check this out
    DATA: ref_obj    TYPE REF TO zmfg_production_ord.----> BADI
    * Instantiate the proxy class
        CREATE OBJECT ref_obj.
        TRY.
            CALL METHOD ref_obj->execute_asynchronous
              EXPORTING
                output = it_output.     "Output Structure
            COMMIT WORK.
          CATCH cx_ai_system_fault INTO ref_sysexception.
        ENDTRY.
        IF  ref_sysexception IS INITIAL.
          WRITE : / 'Error Message'.
        ENDIF.
    Edited by: Raj on May 28, 2008 4:52 PM

  • Referencing utility classes from a war file

    How do you reference a utility class from a war file? I tried adding the class to the deployment plan descriptor, however I still get a ClassNotFoundException.
    Thanks,
    Will

    To use the utility classes from a war you have to place them under the web-inf/classes directory.
    webApplication(WAR directory)--->WEB-INF--> classes (put your utility classes in this directory)

  • Is it possible to load classes from a jar file

    Using ClassLoader is it possible to load the classes from a jar file?

    URL[] u = new URL[1] ;
    u[0] = new URL( "file://" + jarLocation + jarFileName + "/" );
    URLClassLoader jLoader = new URLClassLoader( u );
    Object clsName = jLoader.loadClass( clsList.elementAt(i).toString() ).newInstance();
    I get this error message.
    java.lang.ClassNotFoundException: ExceptionTestCase
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:297)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:253)
    // "file://" + fileLocation + fileName + "/" This works fine from a browser.
    Is there anything I am missing? Thanks for the reply.

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

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

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

  • Dynamic proxy class from a Class instead of an Interface

    Why is not possible to create a dynamic proxy class from a Class instead of an Interface, using java.lang.reflect.Proxy?
    I have seen the source code of Proxy :
         * Verify that the Class object actually represents an
         * interface.
         if (!interfaceClass.isInterface()) {
              throw new IllegalArgumentException(
              interfaceClass.getName() + " is not an interface");
    It seems to be restricted as a desing desition. Has someone knows about the reason of that?
    There is a workarround for creating dynamic proxy classes from any POJO which not implements any interface?

    The JDK doesn't allow you to proxy classes for a few reasons: it encourages you to use interfaces - often a good idea - and also, proxying of classes exposes you to unpredictable behaviour. Since dynamic proxies are created by generating a new class at runtime, if you proxied a class you'd be generating a subclass of that class, and if the superclass had any final methods, the proxy wouldn't be able to intercept invocation of them, so your proxy wouldn't work properly. Also, the superclass would actually be loaded, which could produce other unpredictable results if, say, that class had a static initializer. With an interfaces, you generate an object that just has the public API described by the interface, with a class, you're actually generating a subclass of the proxied type, which isn't the same thing
    If you really want to proxy a class rather than an interface, there are various third-party libraries around that will do it for you. ASM, CGLIB, BCEL to name a few. My choice would be ASM, but really I'd urge you to try and re-design with interfaces if at all possible
    http://cglib.sourceforge.net/
    http://asm.objectweb.org/
    http://jakarta.apache.org/bcel/

  • Problem creating a web service PROXY from a wsdl file/URL

    Hi,
    I am experiencing problems when I want to import a WSDL file for creating a proxy object.
    When I import the WSDL file from URL I get an error like this: <b>404   Not Found
    The requested resource does not exist.</b>
    Then, I  try to create it from a file, but I get other error:
    <b>Document not found (path o:\BCS.WSDL, error code 7</b>
    The error code 7 indicates <b>unknown error</b>
    Any help?.
    thanks in advance.
    Eduardo.

    Hi,
    I've done the same from other ECC6.0 System and everything was working perfetly, why all this can happen?
    I've ckecked the activation of the proxy objects, traces, etc... and it's the same in both systems, what more should i check?
    Thanks in adavance.

  • Generating Ruby Web Service Access Classes from a WSDL

    If you have tried to consume a web service from Ruby you surely have noticed how annoying is to write manually all the Ruby code just to invoke a service with complext input parameters' structure:
    - You have to know what do the input parameters, their structure and type look like;
    - You have to write Ruby classes for them to encapsulate the structures;
    - You have to instantiate these classes and pass the objects to the web service proxy class;
    - You have to interprete the output parameters.
    All this is not impossible of course, but if you are just consumer of the web service and not the developer, if you don't have the exact documentation, you have to read the WSDL description of the service and create the Ruby classes (structures) for the parameters.
    Fortunately there is a small, though handy tool, called <b>wsdl2ruby.rb</b>. It accomplishes all these boring tasks for you.
    In the following example I will try to show you how <b>wsdl2ruby</b> can be used to generate Ruby classes for accessing a SAP NetWeaver web service, called <b>CreditChecker1</b> (a web service for checking if a person is reliable credit consumer).
    To generate the necessary classes we will create a ruby script. Let us name it <b>ws2rgen.rb</b>. Here is what this file looks like:
    # Import the wsdl2ruby library.
    require 'wsdl/soap/wsdl2ruby'
    require 'logger'
    # Callback function for the WSDL 2 Ruby generation options.
    def getWsdlOpt(s)
         optcmd= {}
         s << "Service"
         optcmd['classdef'] = s
         #should work but doesn't, driver name is derived from classname
         #if you specify both it breaks, same thing for client_skelton
         #optcmd['driver'] = s
         optcmd['driver'] = nil
         #optcmd['client_skelton'] = nil
         optcmd['force'] = true
         return optcmd
    end
    # Create logger.
    logger = Logger.new(STDERR)
    # Create WSDL2Ruby object and generate.
    worker = WSDL::SOAP::WSDL2Ruby.new
    worker.logger = logger
    # WSDL file location.
    worker.location = "http://mysapserver:53000/CreditChecker1/Config1?wsdl"
    # Where to generate.
    worker.basedir = "temp"
    # Set options.
    worker.opt.update(getWsdlOpt("Service"))
    # Heat.
    worker.run
    The procedure is straightforward. First we create the WSDL2Ruby object, set its properties <b>location</b> and <b>basedir</b> and then set all other options via the callback function <b>getWsdlOpt()</b>. For further information about these parameters one could consult the source code of wsdl2ruby or contact the developers. Nevertheless the default options are pretty satisfactory. With the last line we start the generation. Two Ruby files will be generated in the <b>temp</b> folder, which is a subfolder of the script's current folder. <b>Please, create the folder "temp" before executing the script.</b>
    This generates two files. The first one is <b>CreditChecker1Wsd.rb</b>, containing the necessary data structures:
    require 'xsd/qname'
    # {urn:CreditChecker1Vi}areReliable
    class AreReliable
      @@schema_type = "areReliable"
      @@schema_ns = "urn:CreditChecker1Vi"
      @@schema_qualified = "true"
      @@schema_element = [["persons", "ArrayOfPerson"]]
      attr_accessor :persons
      def initialize(persons = nil)
        @persons = persons
      end
    end
    # {urn:CreditChecker1Vi}areReliableResponse
    class AreReliableResponse
      @@schema_type = "areReliableResponse"
      @@schema_ns = "urn:CreditChecker1Vi"
      @@schema_qualified = "true"
      @@schema_element = [["response", ["ArrayOfboolean", XSD::QName.new("urn:CreditChecker1Vi", "Response")]]]
      def Response
        @response
      end
      def Response=(value)
        @response = value
      end
      def initialize(response = nil)
        @response = response
      end
    end
    # {urn:CreditChecker1Vi}isReliable
    class IsReliable
      @@schema_type = "isReliable"
      @@schema_ns = "urn:CreditChecker1Vi"
      @@schema_qualified = "true"
      @@schema_element = [["person", "Person"]]
      attr_accessor :person
      def initialize(person = nil)
        @person = person
      end
    end
    # {urn:CreditChecker1Vi}isReliableResponse
    class IsReliableResponse
      @@schema_type = "isReliableResponse"
      @@schema_ns = "urn:CreditChecker1Vi"
      @@schema_qualified = "true"
      @@schema_element = [["response", ["SOAP::SOAPBoolean", XSD::QName.new("urn:CreditChecker1Vi", "Response")]]]
      def Response
        @response
      end
      def Response=(value)
        @response = value
      end
      def initialize(response = nil)
        @response = response
      end
    end
    # {urn:java/lang}ArrayOfboolean
    class ArrayOfboolean < ::Array
      @@schema_type = "boolean"
      @@schema_ns = "http://www.w3.org/2001/XMLSchema"
      @@schema_element = [["boolean", ["SOAP::SOAPBoolean[]", XSD::QName.new("urn:java/lang", "boolean")]]]
    end
    # {urn:com.sap.scripting.test.services.creditchecker.classes}Person
    class Person
      @@schema_type = "Person"
      @@schema_ns = "urn:com.sap.scripting.test.services.creditchecker.classes"
      @@schema_element = [["age", "SOAP::SOAPInt"], ["name", "SOAP::SOAPString"], ["purse", "Purse"]]
      attr_accessor :age
      attr_accessor :name
      attr_accessor :purse
      def initialize(age = nil, name = nil, purse = nil)
        @age = age
        @name = name
        @purse = purse
      end
    end
    # {urn:com.sap.scripting.test.services.creditchecker.classes}Purse
    class Purse
      @@schema_type = "Purse"
      @@schema_ns = "urn:com.sap.scripting.test.services.creditchecker.classes"
      @@schema_element = [["color", "SOAP::SOAPString"], ["money", "Money"]]
      attr_accessor :color
      attr_accessor :money
      def initialize(color = nil, money = nil)
        @color = color
        @money = money
      end
    end
    # {urn:com.sap.scripting.test.services.creditchecker.classes}Money
    class Money
      @@schema_type = "Money"
      @@schema_ns = "urn:com.sap.scripting.test.services.creditchecker.classes"
      @@schema_element = [["amount", "SOAP::SOAPDouble"], ["currency", "SOAP::SOAPString"]]
      attr_accessor :amount
      attr_accessor :currency
      def initialize(amount = nil, currency = nil)
        @amount = amount
        @currency = currency
      end
    end
    # {urn:com.sap.scripting.test.services.creditchecker.classes}ArrayOfPerson
    class ArrayOfPerson < ::Array
      @@schema_type = "Person"
      @@schema_ns = "urn:com.sap.scripting.test.services.creditchecker.classes"
      @@schema_element = [["Person", ["Person[]", XSD::QName.new("urn:com.sap.scripting.test.services.creditchecker.classes", "Person")]]]
    end
    The second file is <b>CreditChecker1WsdDriver.rb</b>. In it you can find a generated child class of SOAP::RPC::Driver, containing all methods of this web service, so you don't need to add every method and its parameters to call the web service.
    require 'CreditChecker1Wsd.rb'
    require 'soap/rpc/driver'
    class CreditChecker1Vi_Document < ::SOAP::RPC::Driver
      DefaultEndpointUrl = "http://mysapserver:53000/CreditChecker1/Config1?style=document"
      MappingRegistry = ::SOAP::Mapping::Registry.new
      Methods = [
      def initialize(endpoint_url = nil)
        endpoint_url ||= DefaultEndpointUrl
        super(endpoint_url, nil)
        self.mapping_registry = MappingRegistry
        init_methods
      end
    private
      def init_methods
        Methods.each do |definitions|
          opt = definitions.last
          if opt[:request_style] == :document
            add_document_operation(*definitions)
          else
            add_rpc_operation(*definitions)
            qname = definitions[0]
            name = definitions[2]
            if qname.name != name and qname.name.capitalize == name.capitalize
              ::SOAP::Mapping.define_singleton_method(self, qname.name) do |*arg|
                __send__(name, *arg)
              end
            end
          end
        end
      end
    end
    There is a problem with this script, since the <b>Methods</b> array is empty. I suppose it is due to the imports in the SAP NetWeaver WSDL, maybe wsdl2ruby is not mighty enough to handle these WSDL imports. When I succeed in overcoming this, I will post again in this thread to let everybody know.
    Message was edited by: Vasil Bachvarov

    Hi,
    I find Ruby to be really tough to consume SAP WebServices. For simple scenarios like currency conversion may it is good. But for complex scenarios such as Purchase Order entry etc..I found it very annoying to use wsdl2ruby and see that it didnt generate correct proxies.
    Until wsdl2ruby is stable enough to support complex datatypes, authentication etc. my recommendation is to use JRuby and use Java Proxies generated by NW Developer studio until pure Ruby's web service support improves.
    Following link might be of interest w.r.t wsdl2ruby
    http://derklammeraffe.blogspot.com/2006/08/working-with-wsdl2r-soap4r-and-complex.html
    Regards
    Kiran

  • Error when trying to create a web service from a wsdl file using jdeveloper

    Hello,
    I'm using the latest jdeveloper and jdk 6 update 20 on solaris sparc 10.
    When I'm trying to create a web service from a wsdl on the java EE 1.5 platform i get the following error:
    Validation failed:
    java.lang.NoSuchMethodException: com.sun.tools.xjc.generator.annotation.spec.XmlElementRefWriter.required(boolean)
    I've tried the endorsed mechanism with the latest jaxws-api.jar and jaxb-api.jar packages with no help.
    It works fine when i use the java EE 1.4 platform....
    The full Error description:
    oracle.jdeveloper.webservices.model.WebServiceException: Error creating model from wsdl "file:/vobs/NMS/NorthBoundIF/MTOSI/MTOSI_Documentation/DDPs/ResourceTroubleManagement/IIS/wsdl/AlarmRetrieval/AlarmRetrievalHttp.wsdl": java.lang.NoSuchMethodException: com.sun.tools.xjc.generator.annotation.spec.XmlElementRefWriter.required(boolean)
    +     at oracle.jdeveloper.webservices.model.java.JavaWebService.createPortTypes(JavaWebService.java:1635)+
    +     at oracle.jdeveloper.webservices.model.WebService.createServiceFromWSDL(WebService.java:2846)+
    +     at oracle.jdeveloper.webservices.model.WebService.createServiceFromWSDL(WebService.java:2611)+
    +     at oracle.jdeveloper.webservices.model.java.JavaWebService.setDescription(JavaWebService.java:745)+
    +     at oracle.jdevimpl.webservices.wizard.jaxrpc.topdown.TDJaxWsSpecifyWsdlPanel.setDescription(TDJaxWsSpecifyWsdlPanel.java:364)+
    +     at oracle.jdevimpl.webservices.wizard.jaxrpc.common.SpecifyWsdlPanel.buildModel(SpecifyWsdlPanel.java:1109)+
    +     at oracle.jdevimpl.webservices.wizard.jaxrpc.common.SpecifyWsdlPanel$5.run(SpecifyWsdlPanel.java:661)+
    +     at oracle.ide.dialogs.ProgressBar.run(ProgressBar.java:655)+
    +     at java.lang.Thread.run(Thread.java:619)+
    Caused by: oracle.jdeveloper.webservices.tools.WsdlValidationException: Error creating model from wsdl "file:/vobs/NMS/NorthBoundIF/MTOSI/MTOSI_Documentation/DDPs/ResourceTroubleManagement/IIS/wsdl/AlarmRetrieval/AlarmRetrievalHttp.wsdl": java.lang.NoSuchMethodException: com.sun.tools.xjc.generator.annotation.spec.XmlElementRefWriter.required(boolean)
    +     at oracle.jdevimpl.webservices.tools.wsa.WsaAdaptor.newWsdlValidationException(WsaAdaptor.java:825)+
    +     at oracle.jdevimpl.webservices.tools.wsa.WsaAdaptor.getSeiInfo(WsaAdaptor.java:515)+
    +     at oracle.jdeveloper.webservices.tools.WebServiceTools.getSeiInfo(WebServiceTools.java:523)+
    +     at oracle.jdeveloper.webservices.model.java.JavaWebService.getSeiInfo(JavaWebService.java:1741)+
    +     at oracle.jdeveloper.webservices.model.java.JavaWebService.createPortTypes(JavaWebService.java:1496)+
    +     ... 8 more+
    Caused by: oracle.j2ee.ws.common.tools.api.ValidationException: Error creating model from wsdl "file:/vobs/NMS/NorthBoundIF/MTOSI/MTOSI_Documentation/DDPs/ResourceTroubleManagement/IIS/wsdl/AlarmRetrieval/AlarmRetrievalHttp.wsdl": java.lang.NoSuchMethodException: com.sun.tools.xjc.generator.annotation.spec.XmlElementRefWriter.required(boolean)
    +     at oracle.j2ee.ws.tools.wsa.jaxws.JaxwsWsdlToJavaTool.getJAXWSModel(JaxwsWsdlToJavaTool.java:664)+
    +     at oracle.j2ee.ws.tools.wsa.WsdlToJavaTool.createJAXWSModel(WsdlToJavaTool.java:475)+
    +     at oracle.j2ee.ws.tools.wsa.Util.getJaxWsSeiInfo(Util.java:1357)+
    +     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)+
    +     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)+
    +     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)+
    +     at java.lang.reflect.Method.invoke(Method.java:597)+
    +     at oracle.jdevimpl.webservices.tools.wsa.Assembler$2$1.invoke(Assembler.java:218)+
    +     at $Proxy34.getJaxWsSeiInfo(Unknown Source)+
    +     at oracle.jdevimpl.webservices.tools.wsa.WsaAdaptor.getSeiInfo(WsaAdaptor.java:505)+
    +     ... 11 more+
    Caused by: java.lang.RuntimeException: java.lang.NoSuchMethodException: com.sun.tools.xjc.generator.annotation.spec.XmlElementRefWriter.required(boolean)
    +     at com.sun.tools.xjc.generator.bean.field.AbstractField.getMRequired(AbstractField.java:186)+
    +     at com.sun.tools.xjc.generator.bean.field.AbstractField.annotateReference(AbstractField.java:209)+
    +     at com.sun.tools.xjc.generator.bean.field.AbstractField.annotate(AbstractField.java:164)+
    +     at com.sun.tools.xjc.generator.bean.field.AbstractFieldWithVar.createField(AbstractFieldWithVar.java:75)+
    +     at com.sun.tools.xjc.generator.bean.field.SingleField.<init>(SingleField.java:89)+
    +     at com.sun.tools.xjc.generator.bean.field.SingleField.<init>(SingleField.java:76)+
    +     at sun.reflect.GeneratedConstructorAccessor53.newInstance(Unknown Source)+
    +     at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)+
    +     at java.lang.reflect.Constructor.newInstance(Constructor.java:513)+
    +     at com.sun.tools.xjc.generator.bean.field.GenericFieldRenderer.generate(GenericFieldRenderer.java:64)+
    +     at com.sun.tools.xjc.generator.bean.field.DefaultFieldRenderer.generate(DefaultFieldRenderer.java:75)+
    +     at com.sun.tools.xjc.generator.bean.BeanGenerator.generateFieldDecl(BeanGenerator.java:751)+
    +     at com.sun.tools.xjc.generator.bean.BeanGenerator.generateClassBody(BeanGenerator.java:539)+
    +     at com.sun.tools.xjc.generator.bean.BeanGenerator.<init>(BeanGenerator.java:241)+
    +     at com.sun.tools.xjc.generator.bean.BeanGenerator.generate(BeanGenerator.java:181)+
    +     at com.sun.tools.xjc.model.Model.generateCode(Model.java:286)+
    +     at com.sun.tools.xjc.api.impl.s2j.SchemaCompilerImpl.bind(SchemaCompilerImpl.java:251)+
    +     at com.sun.tools.xjc.api.impl.s2j.SchemaCompilerImpl.bind(SchemaCompilerImpl.java:85)+
    +     at oracle.j2ee.ws.common.tools.databinding.jaxb20.JAXB20TypeGenerator.generateJavaTypes(JAXB20TypeGenerator.java:117)+
    +     at oracle.j2ee.ws.tools.wsa.SchemaTool.genValueTypes(SchemaTool.java:186)+
    +     at oracle.j2ee.ws.tools.wsa.jaxws.JaxwsWsdlToJavaTool.getJAXWSModel(JaxwsWsdlToJavaTool.java:647)+
    +     ... 20 more+
    Caused by: java.lang.NoSuchMethodException: com.sun.tools.xjc.generator.annotation.spec.XmlElementRefWriter.required(boolean)
    +     at java.lang.Class.getMethod(Class.java:1605)+
    +     at com.sun.tools.xjc.generator.bean.field.AbstractField.getMRequired(AbstractField.java:184)+
    +     ... 40 more+
    Thanks,
    Roy.

    Guys,
    You are asking about an issue that was a pain in the nick for me few months ago. The problem is that you won't find mych help here as I figured out that Apex geeks here either did not do much webservices or ended up hating it as i do :) . This is an error that can be due many different reason, let me ask you this:
    1- Does your the other system you are trying to call through webservices using HTTPS ?
    2- If yes, did you create a valid oracle wallet for that https connection ?
    3- Make sure you are using the correct URL ( am sure you do, just double check )
    4- If using a proxy, then you have to define that in the web service reference creation page
    provide more info and I hope I can help you with this,
    Sam
    Please reward good answers by marking them correct or helpful!

  • Xrpcc modeler error when trying to generate stub classes from a WSDL

    I'm trying to generate JAX-RPC stub classes (both client and server side) from a WSDL in which one of the message parts references a complexType element defined in the <types> section of the WSDL. Here is my little WSDL document:
    <?xml version="1.0" encoding="UTF-8"?>
    <definitions name="Book_Def"
    targetNamespace="myTypes"
    xmlns:tns="myTypes"
    xmlns:xsd1="myTypes"
    xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
    <types>
    <xsd:schema targetNameSpace="myTypes"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <xsd:element name="Book" type="xsd1:BookType"/>
    <xsd:complexType name="BookType">
    <xsd:all>
    <xsd:element name="authors" type="xsd:string" maxOccurs="10"/>
    <xsd:element name="preface" type="xsd:string"/>
    <xsd:element name="price" type="xsd:float"/>
    </xsd:all>
    </xsd:complexType>
    </xsd:schema>
    </types>
    <message name="runMyPgm">
    <part name="book" type="xsd1:Book"/>
    </message>
    <message name="getPgmResponse">
    <part name="result" type="xsd:string"/>
    </message>
    <portType name="MyPgmIFPortType">
    <operation name="runMyPgm">
    <input message="tns:runMyPgm"/>
    <output message="tns:getPgmResponse"/>
    </operation>
    </portType>
    ... Binding stuff
    </port>
    </service>
    </definitions>
    I've tried many combinations of defining my complex type and input message and whenever I run xrpcc using this WSDL as input, I get a Error: Modeler error: invalid entity name: Book (in namespace "myTypes"). Sorry if this is a dumb question, but what am I doing wrong in my <types> or <message> definitions to cause this error? I've had some luck generating stubs when the part types are all simple types, but I've not had any luck with getting a <complexType> definition accepted by xrpcc. Thanks in advance for any help you can offer.

    Yes you can specify type mapping in configuration file and probably this will solve the problem, but I've never tested this approach. Perhaps I'm not advanced user. Actually the serializerFactory and deserializerFactory are a little vague for me:(

  • Proxy class creation using wsdl

    Hi Everyone
    There is a web service already running and what i have is the wsdl of that web service. How do i create the proxy classes for this webservice using the JWSDP
    Please help its urgent. Or atleasst direct me to any links for this query. Any help is welcome
    Thanks in advance
    Maria

    Edit a file named config.xml :
    <?xml version="1.0" encoding="UTF-8"?>
    <configuration
    xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/config">
    <wsdl location="http://{path}/{serviceName}?WSDL"
    packageName="client">
    </wsdl>
    </configuration>
    and try this command : xrpcc -client config.xml
    It will generate all the client-side classes.
    Finally, write a client that accesses to these classes.
    package client;
    import javax.xml.rpc.Stub;
    public class Client {
    public static void main(String[] args) {
    try {
              Stub stub = createProxy();
              stub._setProperty(javax.xml.rpc.Stub.ENDPOINT_ADDRESS_PROPERTY,args[0]);
              CITClientIF_Stub cl = (CITClientIF_Stub)stub;
              result=cl.Method(...);
    } catch (Exception ex) {
    ex.printStackTrace();
    private static Stub createProxy() {
    return (Stub)(new MyCIT_Impl().getCITClientIFPort());

Maybe you are looking for