Pages

Tuesday, December 29, 2009

Using Oracle Service Registry in Soa Suite 11g

Oracle released a new version of Oracle Service Registry and this 11.1.1.2.0 version is compatible with Soa Suite 11g. In this blog I will show you, how you can use the OSR UDDI Services in Soa Suite 11G. Basically this are steps I did in this blog. Start with installing OSR , Make an UDDI connection in JDeveloper, Add a Business Entity in the OSR, Publish a Soa Web Service to the UDDI registry ( We will do this in JDeveloper ) , Use this Web Service UDDI reference in an other composite and configure the Soa Suite so it can lookup this service in the UDDI registry.

We start by downloading OSR and Oracle Weblogic 11G ( 10.3.2 or 10.3.1 ) .
Install Oracle Weblogic and unpack the OSR zip. Open command and set the java home and path.

set JAVA_HOME=c:\oracle\wls1032\jdk160_14_R27.6.5-32
set PATH=%JAVA_HOME%\bin;%PATH%
java -jar oracle-service-registry-11.1.1.jar

I choose for a standalone registry

We need to install OSR in a folder located in the Weblogic 10.3.2 middleware home.

OSR need to have a repository

I decided to use a datasource for connecting to the OSR repository

I select the domain option, this will create a new Weblogic domain template.

We are finished with installing OSR and now we can create a new Weblogic domain. Start the configuration wizard. We need to select the Oracle Service Registry Option.

When you install OSR on the same server as your Soa Suite server then you can better change the port number of the adminserver else you can get port conflicts and or config.xml corruption.

Start the OSR admin server ( startWeblogic.cmd in your domain home ) and from the domain bin folder we can start the OSR server( startManagedWeblogic osr_server1 )

Start JDeveloper 11g R1 PS1 and add a new UDDI Registry Connection. We need to provide the UDDIv2 inquiry url ( http://server:7101/registry/uddi/inquiry)

In the resource palette we can see the created UDDI Server.

To fill this registry we need to create our own Business entity. Go the registry control console ( http://laptopedwin.wh.lan:7101/registry/uddi/web )





We can go back to JDeveloper resource palette and open the Soa application server connection. Open the right composite application and select the Web service we want to publish to the OSR. Use the right mouse button and select publish WSDL to UDDI.

Provide the username and password and select your own Business Entity.

When we refresh the OSR UDDI connection we can see the Service under the business entity.

To get more UDDI information over this service we can select the service and use the right mouse button to generate a report.

We are ready to use this UDDI service in a composite application. Add the Web Service adapter to the composite and we will lookup the WSDL in the resource palette. Go to the OSR Registry connection and select the service under the Business Entity

We need to choose if we want to lookup this web service for every soa instance in the UDDI server or only once during deployment.
This is how the ws binding looks like in the composite.xml, No hard coded endpoints.

<reference name="HelloService" ui:wsdlLocation="BPELProcess1.wsdl">
<interface.wsdl interface="http://xmlns.oracle.com/HelloWorld/Helloworld/BPELProcess1#wsdl.interface(BPELProcess1)"/>
<binding.ws port="http://xmlns.oracle.com/HelloWorld/Helloworld/BPELProcess1#wsdl.endpoint(bpelprocess1_client_ep/BPELProcess1_pt)"
location="orauddi:/uddi:d798e4c0-f4ab-11de-8e46-d0e4b9a18e45">
<property name="oracle.soa.uddi.serviceKey" type="xs:string" many="false">uddi:d798e4c0-f4ab-11de-8e46-d0e4b9a18e45</property>
</binding.ws>
</reference>

Last step is to provide the UDDI v2 inquiry url, No need to specify the user and password. After this you need to restart the Soa Server.

Finally test your composite services with the UDDI Service references.

71 comments:

  1. Edwin - Can I install SOA suite 11g on my windows XP machine? Just wondering... I've installed SOA 10.1.3.4 ON on my nachine. Systems requirments guide doesn't mentioned about windows XP

    ReplyDelete
  2. Hi,

    that should work, I am also using xp but need to have 3gb memory when you also have running a database on your local machine.

    to save memory you can create just one wls server instead of two which is default http://wiki.oracle.com/page/Oracle+SOA+Suite+11g%3A+How+To+Create+All+In+One+AdminServer

    hope this helps

    ReplyDelete
  3. Hi Edwin,
    I have tried this scenario and I face some issues

    1. I get a 401 Unauthorized error when the composite tries to access the WSDL through UDDI.

    I have setup the UDDI inquiry endpoint along with admin username and password in the SOA Infra's common properties and restarted soasuite.I also noticed that the user admin does not exist in the realm myrealm.

    Any ideas.

    Regards,
    Prasanna

    ReplyDelete
  4. Hi,

    just leave the username / password empty at the UDDI inquiry endpoint settings in the soa suite.

    Somehow the admin account is not allowed to do this.

    thanks

    ReplyDelete
  5. Thanks for your reply.Removing the username and password did the trick

    ReplyDelete
  6. Hey Edwin, nice post. I have created a blog on OSR 11g Installation Strategies that references this in my SOA Governance blog

    Dave

    ReplyDelete
  7. Hi Edwin,

    is Oracle XE supported for the registry v11? I used XE for registry v10.3 with success, but am getting an error message with v11.

    [java] BUILD FAILED
    [java] C:\Oracle\Middleware\registry_11gR1\etc\setup\database.xml:737: The following error occurred while executing this line:
    [java] C:\Oracle\Middleware\registry_11gR1\etc\setup\database.xml:339: The following error occurred while executing this line:
    [java] C:\Oracle\Middleware\registry_11gR1\etc\setup\database.xml:422: The following error occurred while executing this line:
    [java] C:\Oracle\Middleware\registry_11gR1\etc\setup\database.xml:207: The following error occurred while executing this line:
    [java] C:\Oracle\Middleware\registry_11gR1\etc\db\oracle\installOracleDB.xml:99: The following error occurred while executing this line:
    [java] C:\Oracle\Middleware\registry_11gR1\etc\db\oracle\installOracleDB.xml:166: Java returned: 1

    [java] Total time: 35 seconds
    Java returned: 1

    ReplyDelete
    Replies
    1. Note, from the OSR docs (http://www.oracle.com/technetwork/middleware/registry/osr111productdocumentation-159992.pdf):

      "You need to manually create a database user schema by having your database administrator run a script."

      You'll find a script (sample.sql) in the root directory when you extract the installation files. You just need to set the password you want to use for the OSR schema (the same one you specify later to the OSR installer).

      Delete
  8. Hi Philippe,

    you can look at these files to see what statements fails. I don't think osr needs special database options. it just need tables.

    or try to install this repos manually

    thanks

    ReplyDelete
  9. Hi Edwin,
    I have a separate SOA 11g and OSB 10g instance on my laptop. I installed the OSR into the OSB instance (WAR deployment). I followed your steps but when I invoke a composite that calls a UDDI service I get the following error -

    oracle.fabric.common.FabricException: Error in getting XML input stream: orauddi:/uddi:88f06830-3ae6-11df-8558-218fbd718551: no wsdlDeployment binding in UDDI for uddi:88f06830-3ae6-11df-8558-218fbd718551

    The UDDI service key is fine but for some reason it is not able to locate the service. Any thoughts?

    Thanks
    Clement

    ReplyDelete
  10. Hi,

    can you check if you don't use username / password in the soa uddi url part. Leavee it empty.

    and make an uddi connection in jdev and display the service report , to check everything is alright.

    thanks Edwin

    ReplyDelete
  11. Hi Edwin,
    I still have the error even when I leave the userid/pwd field empty.

    java.lang.Exception: oracle.sysman.emSDK.webservices.wsdlapi.SoapTestException:
    oracle.fabric.common.FabricException: Cannot read WSDL "{http://xmlns.oracle.com/ExpenseSOA_jws/BPELSyncTest/SyncBPEL}syncbpel_client_ep"
    from Metadata Manager.: Error in getting XML input stream: orauddi:/uddi:d2202b90-3b8f-11df-bdc8-df56d991bdc7:
    no wsdlDeployment binding in UDDI for uddi:d2202b90-3b8f-11df-bdc8-df56d991bdc7 at
    oracle.sysman.emas.model.wsmgt.WSTestModel.invokeOperation(WSTestModel.java:570) at

    My composite snippet looks like -




    uddi:d2202b90-3b8f-11df-bdc8-df56d991bdc7

    ReplyDelete
  12. Hi Edwin,

    I published a XSD in OSR using OSR console. It generated a UUID successfully for it.
    I created a UDDI Server connection from JDeveloper and able to see only the published services. Published XSD is not visible in the UDDI tree.

    Why Published XSD is not visible in Jdeveloper and How can I import published XSD into a BPEL component.

    Thanks,
    Vidya

    ReplyDelete
  13. Hi

    you mean you published a wsdl. Please try the other way around. publish a ws to wls and select this service in the resource component. Add this to the registered UDDI Connection.

    and did you add a business entity and is the web service a public one.

    thanks

    ReplyDelete
  14. Hi,

    No. I published only XSD from OSR console. It had created a UUID key ("uddi:932a4230-3d5c-11df-9cd6-f57d02409cd2") and tModel for the published XSD.
    Now, How can I import the XSD into BPEL using UUID key instead of actual URL.

    Thanks,
    Vidya

    ReplyDelete
  15. Ok,

    a bit strange Ok, you better make a wsdl where you import this XSD and use this wsdl in your BPEL process.

    or do this http://biemond.blogspot.com/2009/07/using-shared-object-in-soa-suite-11g.html
    where you add the xsd to MDS and import this in your BPEL process.

    Oracle Service Registry is only handy in Soa when you use a reference service in your BPEL process. Use MDS for your import of XSD's

    hope this helps

    thanks

    ReplyDelete
  16. Thank's for the info. It helps. ^_^

    ReplyDelete
  17. Oracle... Hmmm.. my favorite DBMS

    ReplyDelete
  18. Hi Edwin,
    I have installed OSB 11g, OER and OSR in a same domain but on a different managed server. Installation went smoothly but when I am trying to access osr using http://localhost:6101/registry/uddi/web. I am getting following error.

    java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "com.idoox.wsdl.DefinitionImpl.getMessage(Ljavax/xml/namespace/QName;)Ljavax/wsdl/Message;" the class loader (instance of weblogic/utils/classloaders/ChangeAwareClassLoader) of the current class, com/idoox/wsdl/DefinitionImpl, and the class loader (instance of sun/misc/Launcher$AppClassLoader) for interface javax/wsdl/Definition have different Class objects for the type javax/xml/namespace/QName used in the signature
    at com.idoox.wsdl.factory.WSDLFactoryImpl.newDefinition(WSDLFactoryImpl.java:60)
    at com.idoox.wsdl.xml.WSDLReaderImpl.parseDefinitions(WSDLReaderImpl.java:419)

    I have also applied Patch 9499508.

    Regards

    Rebonto

    ReplyDelete
  19. Hi,

    Did you install this on wls 10.3.2 or 10.3.3. I know weblogic 10.3.2 works. I think you got a library conflict with a jar, OSR expects a different version.

    and I see OSR is still verion 11.1.1.2.0.

    So dont mix it. Install it in a separate fmw home and use wls 10.3.2

    thanks

    ReplyDelete
    Replies
    1. Hi, I installed wls 10.3.6, OSB 11.1.1.6 and OSR 11.1.1.6 . OSR managed server run successfully. By follow error occurs while access to /registry/uddi/web and while install registry.
      error:
      ]] Root cause of ServletException.
      java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "com.idoox.wsdl.DefinitionImpl.getMessage(Ljavax/xml/namespace/QName;)Ljavax/wsdl/Message;" the class loader (instance of weblogic/utils/classloaders/ChangeAwareClassLoader) of the current class, com/idoox/wsdl/DefinitionImpl, and the class loader (instance of sun/misc/Launcher$AppClassLoader) for interface javax/wsdl/Definition have different Class objects for the type javax/xml/namespace/QName used in the signature
      at com.idoox.wsdl.factory.WSDLFactoryImpl.newDefinition(WSDLFactoryImpl.java:60)
      at com.idoox.wsdl.xml.WSDLReaderImpl.parseDefinitions(WSDLReaderImpl.java:419)
      at com.idoox.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:309)
      at com.idoox.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:272)
      at com.idoox.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:198)
      Truncated. see log file for complete stacktrace
      >

      thanks

      Delete
    2. Hi, I installed wls 10.3.6, OSB 11.1.1.6 and OSR 11.1.1.6 . OSR managed server run successfully. By follow error occurs while access to /registry/uddi/web and while install registry. error:
      ]] Root cause of ServletException.
      java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "com.idoox.wsdl.DefinitionImpl.getMessage(Ljavax/xml/namespace/QName;)Ljavax/wsdl/Message;" the class loader (instance of weblogic/utils/classloaders/ChangeAwareClassLoader) of the current class, com/idoox/wsdl/DefinitionImpl, and the class loader (instance of sun/misc/Launcher$AppClassLoader) for interface javax/wsdl/Definition have different Class objects for the type javax/xml/namespace/QName used in the signature
      at com.idoox.wsdl.factory.WSDLFactoryImpl.newDefinition(WSDLFactoryImpl.java:60)
      at com.idoox.wsdl.xml.WSDLReaderImpl.parseDefinitions(WSDLReaderImpl.java:419)
      at com.idoox.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:309)
      at com.idoox.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:272)
      at com.idoox.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:198)
      Truncated. see log file for complete stacktrace
      >



      thanks

      Delete
    3. Hi,

      Change your post class path in start managed server script so with osr server1 it does not load the OSB jars. Oracle made a blog about this.

      Thanks

      Delete
  20. hi,

    I have a bpel composite with 2 operations in it. And my end application would send me its response through webservice call which uses only http binding.
    I have to specify the url to which the application needs to send the response.
    How do I do that in 11g?

    This is how i used to send in 10g.

    http://adc60009rems.us.oracle.com:7859/httpbinding/default//

    Thanks
    Vinod

    ReplyDelete
  21. the url would be like

    http://adc60009rems.us.oracle.com:7859/httpbinding/default/PROCESS_NAME/OPERATION_NAME

    ReplyDelete
  22. Hi Edwin,

    Can we publish a bunch of wsdls together as a jar or something. we are using a OSB and our client repository is on WSRR. I have come up with a solution of registring all those present in wsrr to osr so we can use it with osb. but was wondering how can I re-register complete registry from wsrr to osr. Can you guide me on this?

    Thanks,

    ReplyDelete
  23. Hi Edwin, I'm having the same problem that cvc2008, I'm trying to invoke a service registered in OSR 10g from a composite in 11.1.1.2.

    Do you know if there is a solution for this problem?, or do you have the cvc2008's contact information in order to ask him/her??

    Thanks in advance

    ReplyDelete
  24. Hi Edwin, I'm having the same problem that cvc2008, I'm trying to invoke a service registered in OSR 10g from a composite in 11.1.1.2.

    Do you know if there is a solution for this problem?, or do you have the cvc2008's contact information in order to ask him/her??

    Thanks in advance

    ReplyDelete
  25. Hello Mr. Edwin,
    I have follow all steps of installing oracle service registry, but when I type: http://localhost:7001/registry/uddi/web
    I got the message error:
    Error 404--Not Found
    From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1:
    10.4.5 404 Not Found

    The server has not found anything matching the Request-URI. No indication is given of whether the condition is temporary or permanent.

    Even, I tried to change the port to 7101, but still I get the same message.

    Do you have any ideas about the error message?
    thanks in advance,
    regards,
    Sophea

    ReplyDelete
    Replies
    1. Hi,

      What does the weblogic output says and in the weblogic console check the port number at the servers and also take a look at the deployments to check if osr deployment is started

      thanks

      Delete
  26. Hello Mr. Edwin,
    Many thanks for your reply, I learn something from it.

    At first, I though we just need to run weblogic and oracle service registry will run too.

    However, after running I get this message. I am finding solution now. If you could tell me, it will be very helpful.
    The server osr_server1 does not have a machine associated with it.
    Message icon - Warning All of the servers selected are currently in a state which is incompatible with this operation or are not associated with a running Node Manager or you are not authorized to perform the action requested. No action will be performed.

    regards,
    Sophea

    ReplyDelete
    Replies
    1. Hi,

      you can start it with "startManagedWebLogic.cmd osr_server1" and use this port number to connect to the osr application.

      Delete
    2. Hello,

      How to run startManagedWebLogic.cmd osr_server1 because when I double click on the file startManagedWebLogic.cmd, it just flash out a second and disappear. It seems like does not work.

      regards,
      Sophea

      Delete
  27. Hello Mr. Edwin,

    After I run osr_server1, it get this message:
    For server osr_server1, the Node Manager associated with machine Machine_1 is not reachable.
    All of the servers selected are currently in a state which is incompatible with this operation or are not associated with a running Node Manager or you are not authorized to perform the action requested. No action will be performed.

    Could you please help me?

    regards,
    Sophea

    ReplyDelete
    Replies
    1. Hi,

      You got two options setup nodemanagers or startup with cmd. You can better startup with cmd.
      So start cmd.exe , cd to the bin folder of your domain and type startMan... osr_server1

      Good luck, if this does not work you can better buy a WebLogic admin book.

      Delete
  28. Hi Edwin,
    I am facing a very similar issue when connecting to the OSR. Both SOA and OSR are on separate domains in the same weblogic server. I am receiving the below error.


    oracle.fabric.common.FabricException: oracle.fabric.common.FabricException: Error in getting XML input stream: orauddi:/uddi:94dcb220-c68f-11e1-b032-28d9db40b031: cannot open orauddi url: oracle.fabric.common.uddiurl.resolver.exception.SRSecurityException: org.systinet.wasp.client.XMLInvocationException: Exception while processing incoming message message. Unable to read server response. Server returned status code: 401 (Unauthorized) (Content-type:text/html; charset=UTF-8):

    The request requires user authentication. The response MUST include a WWW-Authenticate header field (section 14.46) containing a challenge applicable to the requested resource. The client MAY repeat the request with a suitable Authorization header field (section 14.8). If the request already included Authorization credentials, then the 401 response indicates that authorization has been refused for those credentials. If the 401 response contains the same challenge as the prior response, and the user agent has already attempted authentication at least once, then the user SHOULD be presented the entity that was given in the response, since that entity MAY include relevant diagnostic information. HTTP access authentication is explained in section 11.

    Your inputs will be very much appreciated.

    Thanks.

    ReplyDelete
    Replies
    1. Hi,

      can you setup a domain trust between the domains. enable cross domain and set the same domain password on both domains. Maybe that will work.

      thanks

      Delete
  29. Biemond thanks alot for your posts, they are always helpful,

    One question it iss possible to make the uddi key variable, to refence different services urls using a name convention ?
    ( i understand its possible to customize the uddi keys )

    something like:

    location="orauddi:/uddi:d798e4c0-f4ab-11de-8e46-d0e4b9a18e45 ${expression}">

    on the:




    uddi:d798e4c0-f4ab-11de-8e46-d0e4b9a18e45



    this would be helpful to route, to different services on runtime , without chaging the services logic.

    Thanks a lot
    Damian Acevedo

    ReplyDelete
    Replies
    1. Hi,

      Do you mean in OSB & Soa Suite or in OSR. I think in soa and osb you can use deployment plans where you can change the uddi key. And maybe in OSB you can override it at runtime with a transport activity.

      else you need to use dynamic endpoints in soa and osb and skip uddi.

      thanks

      Delete
    2. I need it OSB and soa suite, (at runtime) about OSB "you can override it at runtime with a transport activity." thanks , ill try it

      .. And in SOA Suite, how can i change the binding location section, at runtime ?

      Thanks

      Delete
    3. Hi,

      did you see this
      https://blogs.oracle.com/dasoa/entry/11g_dynamic_partnerlink_example

      thanks

      Delete
  30. Dear Edwin,
    When I access to http://localhost:7101/registry/uddi/web, I got this message
    org.idoox.wasp.WaspInternalException: java.lang.RuntimeException: Updates to config files not supported
    at com.systinet.wasp.WaspImpl.boot(WaspImpl.java:399)
    at org.systinet.wasp.Wasp.init(Wasp.java:151)
    at com.systinet.transport.servlet.server.Servlet.init(Unknown Source)
    at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:283)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
    at weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecurityHelper.java:64)
    at weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubLifecycleHelper.java:58)
    at weblogic.servlet.internal.StubLifecycleHelper.(StubLifecycleHelper.java:48)
    at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:539)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:244)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:184)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3732)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3696)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2273)
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179)
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1490)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
    Caused by: java.lang.RuntimeException: Updates to config files not supported
    at com.idoox.config.xml.XMLConfigurator.updateConfigFile(XMLConfigurator.java:720)
    at com.idoox.config.xml.XMLConfigurator.prepareConfigFile(XMLConfigurator.java:570)
    at com.idoox.config.xml.XMLConfigurator.init(XMLConfigurator.java:420)
    at org.idoox.config.Configurator.init(Configurator.java:64)
    at com.systinet.wasp.WaspImpl.boot(WaspImpl.java:357)
    ... 20 more

    please help me
    sophea

    ReplyDelete
    Replies
    1. Hi,

      can you check this
      I am not sure if you deployed OSR in the same domain as SOA or a different domain. The recommended practice is to deploy in a separate domain. If you want to deploy in the same domain as SOA, then you need to apply Patch 9499508 to OSR (post-installation) following the readme. Even when in the same domain, OSR should be in a separate managed server from the SOA Suite.

      Delete
    2. Hello,
      thanks for your reply.
      Yes, it is true that I create one domain which has soa and osr.
      I found the same solution description on internet. But I could not find the patch 9499508.

      So, I try to create another 2 domains, one for soa and another for osr. Then I got the other errors message.
      And if soa and osr are in different domain, how can I run both of them. because in each domain has an adminserver and it seems that i can run only one adminserver at a time.
      regards,
      sophea

      Delete
    3. Hi,

      The patch should be on support.oracle.com and you can change one of the adminserver port number in the weblogic console.

      thanks

      Delete
    4. for PS5 or 11.1.1.6 you can use this patch
      Patch 13912014: TRACKING BUG FOR PATCH ON OSR 11.1.1.6

      The error observed after installing OSR is the following:

      error java.lang.LinkageError: Class javax/xml/namespace/QName

      java.lang.LinkageError: Class javax/xml/namespace/QName violates loader constraints
      at com.idoox.wsdl.extensions.PopulatedExtensionRegistry.(PopulatedExtensionRegistry.java:84)
      at com.idoox.wsdl.factory.WSDLFactoryImpl.newDefinition(WSDLFactoryImpl.java:61)
      at com.idoox.wsdl.xml.WSDLReaderImpl.parseDefinitions(WSDLReaderImpl.java:419)
      at com.idoox.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:309)
      at com.idoox.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:272)
      at com.idoox.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:198)
      at com.idoox.wsdl.util.WSDLUtil.readWSDL(WSDLUtil.java:126)
      at com.systinet.wasp.admin.PackageRepositoryImpl.validateServicesNamespaceAndName(PackageRepositoryImpl.java:885)
      at com.systinet.wasp.admin.PackageRepositoryImpl.registerPackage(PackageRepositoryImpl.java:807)
      at com.systinet.wasp.admin.PackageRepositoryImpl.updateDir(PackageRepositoryImpl.java:611)
      at com.systinet.wasp.admin.PackageRepositoryImpl.updateDir(PackageRepositoryImpl.java:643)
      at com.systinet.wasp.admin.PackageRepositoryImpl.update(PackageRepositoryImpl.java:553)
      at com.systinet.wasp.admin.PackageRepositoryImpl.init(PackageRepositoryImpl.java:242)
      at com.idoox.wasp.ModuleRepository.loadModules(ModuleRepository.java:198)
      at com.systinet.wasp.WaspImpl.boot(WaspImpl.java:383)
      at org.systinet.wasp.Wasp.init(Wasp.java:151)
      at com.systinet.transport.servlet.server.Servlet.init(Unknown Source)

      OSR has been installed in a domain where SOA Suite or OSB has already been installed.

      Delete
  31. Hello Edwin,

    I have another question to ask you. I get this message when I start the managedserver: weblogic.security.SecurityInitializationException: Authentication for user weblogic denied.

    I try to solve this problem by creating a security folder in managedserver with boot.properties file. However, even I try to put user and password in encrypted format or not. It still does not work.

    I also try to change the passport in admin console. but still get the same error.

    Hope you can help me for this point. Many thanks in advanced.
    sophea

    ReplyDelete
    Replies
    1. it looks like the weblogic password is incorrect or disbabled/ locked out.

      Delete
    2. I am getting the error java.lang.LinkageError: Class javax/xml/namespace/QName.

      Is the Patch 13912014 is new patch number for OSR 11.1.1.6. I am using the OSR 11.1.1.6.

      Please suggest.


      Delete
    3. Indeed,

      but in the end I still added an if condition around the POST Classpath on the setDomainEnv script. Don't know what this patch solves, it didn't work on a oer,soa and osb domain.

      thanks

      Delete
  32. Hello Edwin,

    Could you please tell me how can I run 2 weblogic adminserver in 2 different domains in one PC.
    When ever I run the 2nd weblogic adminserver, i always get error message and does not allow to run the 2nd adminserver. Then the configure file of the new domain will contain the same contain of the pervious running adminserver's configure file.

    Thanks,
    sophea

    ReplyDelete
    Replies
    1. Hi,

      when you create a new domain , you can change the default port of the adminserver.
      or change it directly on the adminserver entry in the config.xml .

      or do it in the weblogic console and go the adminserver and change 7001 to an other value.
      and restart weblogic

      thanks

      Delete
  33. Dear Edwin,

    After installing the oracle service registry, I want to test with the demos and services that are registrered during the installation.

    However, I changed the machine port during the installation that is different from the demo. The demos services/data that are stored in the registry does not change the port value automatically.

    My question is how can i change the value of wsdl-location through oracle registry registry?
    I use update function in registry console to update service's information, but could not find the way to update the value of wsdl file.

    Many thanks in advanced for your reply.
    best regards,
    sophea

    ReplyDelete
    Replies
    1. Hi,

      maybe you can change it in the OSR database, it must be some data in a table.

      thanks

      Delete
  34. Hello Edwin,
    Cannot open orauddi url" in OSR 11g:
    I'm working with SOA Suite 11.1.1.6 version and I have a BPEL process that performs a dynamic lookup against a WSDL on the Oracle Service Registry (OSR) 11g. The error returned was the following:

    Error: fallo en el análisis de XML debido a "Error al obtener el flujo de entrada XML: orauddi:/uddi:2eb2d2c0-698e-11e2-99e6-ea43dc7099e5: cannot open orauddi url: oracle.fabric.common.uddiurl.resolver.exception.SRInitializeException: Internal Error in systinet API: org.systinet.wasp.webservice.ICurrent"

    I made the connection to the UDDI into Enterprise Manager, but still gives me the same error, with the version of the SOA Suite 11.1.1.5 never gave me that error.

    PS: All the products are from the same version 11.1.1.6.

    ReplyDelete
    Replies
    1. Hi,

      Do you the orauddi key exists and orauddi protocol is still valid in PS5 else this is very strange and looks like a bug especially when you got it working in PS4

      Thanks

      Delete
    2. This comment has been removed by the author.

      Delete
  35. Hi Edwin,
    How I can use WebLogic users as users of Oracle logging service?, That is, how I can integrate weblogic users to OSR

    ReplyDelete
    Replies
    1. Hi,

      Don't know , I think they didn't implemented this

      thanks

      Delete
  36. I have a service deployed in weblogic and referenced in the OSR, and I have a BPEL process that performs a dynamic lookup to the service and gives me an error.

    ReplyDelete
  37. Hi,

    OSR1116 installed on below given environment,
    Solaris OS, JDK1.6+, Oracle 11g DB,ojdbc6.jar, Embedded Jetty server.

    Installation showed successful. But in install.log showed below exception,
    -------------
    [java] import.configuration.files:
    [java] [echo] Initiate configuration files ...
    [java] [java] ERROR: application_core:com.systinet.uddi.config.CipherHelper - Cannot decrypt value (Input length must be multiple of 8).
    [java] [java] EXCEPTION: Input length must be multiple of 8
    [java] [java] javax.crypto.IllegalBlockSizeException: Input length must be multiple of 8
    ----------------------------------
    And server start up console showing below exception,
    -----------------------------------

    INFO: provider.XMLDSigProviderFactory - Using 'ssj' XML DSig provider.
    ERROR: config.CipherHelper - Cannot decrypt value (Input length must be multiple of 8).
    javax.crypto.IllegalBlockSizeException: Input length must be multiple of 8

    ------------------------------------

    And logEvents.log showing below exception,
    -------------------------------------

    application_core:com.systinet.uddi.config.CipherHelper - Cannot decrypt value (Input length must be multiple of 8). - EXCEPTION: javax.crypto.IllegalBlockSizeException: Input length must be multiple of 8
    -------------------------------------

    Please suggest why these exceptions are throwing on different levels of logs.

    Thanks in advance.

    ReplyDelete
    Replies
    1. Hi,

      don't know if you do supported operations if so you can open a support call.

      Thanks

      Delete
  38. Hi Edwin , Quick question , if we changed the hostname and port number of the OSR for example , the only change we need to do is in the last step 'the UDDI inquiry url' just to point to the new location of the OSR server, is that correct ?

    ReplyDelete
  39. Hey Edwin -
    This is off topic but would like to know if there is any open source UDDI that can be integrated with Oracle SOA.

    Thanks
    Sam

    ReplyDelete
    Replies
    1. Hi,

      I tried apache juddi 2 and 3 but found out that the jdev and soa uses the v2 and 3 uddi protocol. And you need to find a product who supports v2 and 3 in 1 product.

      Let me know if you found one.

      Thanks

      Delete
  40. Hey Edwin,
    Could you please let me know if there is any open source UDDI registry we can use with soa ?
    Thanks
    Sam

    ReplyDelete
  41. This comment has been removed by the author.

    ReplyDelete
    Replies
    1. In continuation to the above qn,
      Do we have to do any setting in connections or adf-config?
      Because when we use MDS, we set the value of the prefix oramds in adf-config.xml. So got a doubt.

      Delete
  42. Hi Biemond,
    Thanks for the post.
    When I copy the wsdl of the reference locally(as is done in this example) and deploy, its getting deployed properly.
    Reference entry in composite.xml
    reference name="HelloService" ui:wsdlLocation="BPELProcess1.wsdl"
    If you observe, the wsdl is local to the machine.
    But If we don't want to copy the wsdl locally, rather refer from UDDI during design time aswell, just like how we refer to artifacts in MDS (For referring artifacts from MDS during designtime, we create an entry in adf-config.xml), what is that we have to do extra?
    Because directly referring from UDDI without copying wsdl locally, composite.xml creates the following entry
    reference name="ComplaintUI_ESProviderInterfaceSOAP11BindingQSService"
    ui:wsdlLocation="orauddi:/uddi:62d161a0-26db-11e4-99da-bab6ca9099da"


    And when deploying this, it is unable to find the location of the wsdl

    Error(15,30): Load of wsdl "orauddi:/uddi:62d161a0-26db-11e4-99da-bab6ca9099da" failed

    Would you please let me know if there's any setting required in Jdev/adf-config xml?

    ReplyDelete
  43. Hi Edwin,

    Can you please tell me what all pre-requsite softwares are needed to install oracle service registry.
    I am having weblogic 10.3 OSB 11.1.1.7 oracle database xe 11g
    Also let me know if SOA suite is mandatory for OSR installation in a standalone system.

    -Sub

    ReplyDelete