Bug 816582 - HP Systinet cannot be used as a UDDI registry
HP Systinet cannot be used as a UDDI registry
Status: CLOSED NOTABUG
Product: JBoss Enterprise SOA Platform 5
Classification: JBoss
Component: JBossESB (Show other bugs)
5.3.0 GA
Unspecified Unspecified
unspecified Severity urgent
: ER2
: 5.3.0 GA
Assigned To: tcunning
: TestBlocker
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2012-04-26 09:01 EDT by Jiri Sedlacek
Modified: 2015-08-02 19:43 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2012-05-07 09:12:33 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)

  None (edit)
Description Jiri Sedlacek 2012-04-26 09:01:23 EDT
Description of problem:

If soa-p is configured to use HP Systinet, exception is throw when jbossesb is started.

14:49:45,686 INFO  [EsbDeployment] Starting ESB Deployment 'jbossesb.esb'
14:49:46,257 INFO  [J2eeConnectionManager] initializing...
14:49:46,279 INFO  [MessagePayloadProxy] Using the non-legacy payload-to-message exchange pattern.  To switch back to the legacy exchange patterns, use the 'core:use.legacy.message.payload.exchange.patterns' property in jbossesb-properties.xml.
14:49:51,395 ERROR [AbstractKernelController] Error installing to Start: name=jboss.esb.vfsfile:/home/jsedlace/soa/jboss-soa-p-5/jboss-as/server/postgresql84/deploy/jbossesb.esb/ state=Create
org.jboss.soa.esb.listeners.lifecycle.ManagedLifecycleException: Unexpected error during registration for epr JMSEpr [ PortReference < <wsa:Address jms:127.0.0.1:1099#queue/DeadMessageQueue/>, <wsa:ReferenceProperties jbossesb:java.naming.factory.initial : org.jnp.interfaces.NamingContextFactory/>, <wsa:ReferenceProperties jbossesb:java.naming.provider.url : 127.0.0.1:1099/>, <wsa:ReferenceProperties jbossesb:java.naming.factory.url.pkgs : org.jnp.interfaces/>, <wsa:ReferenceProperties jbossesb:destination-type : queue/>, <wsa:ReferenceProperties jbossesb:destination-name : queue/DeadMessageQueue/>, <wsa:ReferenceProperties jbossesb:specification-version : 1.1/>, <wsa:ReferenceProperties jbossesb:connection-factory : ConnectionFactory/>, <wsa:ReferenceProperties jbossesb:persistent : true/>, <wsa:ReferenceProperties jbossesb:acknowledge-mode : AUTO_ACKNOWLEDGE/>, <wsa:ReferenceProperties jbossesb:transacted : false/>, <wsa:ReferenceProperties jbossesb:type : urn:jboss/esb/epr/type/jms/> > ]
	at org.jboss.soa.esb.listeners.message.MessageAwareListener.doInitialise(MessageAwareListener.java:201)
	at org.jboss.soa.esb.listeners.lifecycle.AbstractManagedLifecycle.initialise(AbstractManagedLifecycle.java:133)
	at org.jboss.soa.esb.listeners.lifecycle.ManagedLifecycleController.initialiseInstances(ManagedLifecycleController.java:109)
	at org.jboss.soa.esb.listeners.lifecycle.ManagedLifecycleController.start(ManagedLifecycleController.java:66)
	at org.jboss.soa.esb.listeners.deployers.mc.EsbDeployment.start(EsbDeployment.java:232)
	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 org.jboss.reflect.plugins.introspection.ReflectionUtils.invoke(ReflectionUtils.java:59)
	at org.jboss.reflect.plugins.introspection.ReflectMethodInfoImpl.invoke(ReflectMethodInfoImpl.java:150)
	at org.jboss.joinpoint.plugins.BasicMethodJoinPoint.dispatch(BasicMethodJoinPoint.java:66)
	at org.jboss.kernel.plugins.dependency.KernelControllerContextAction$JoinpointDispatchWrapper.execute(KernelControllerContextAction.java:243)
	at org.jboss.kernel.plugins.dependency.ExecutionWrapper.execute(ExecutionWrapper.java:47)
	at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchExecutionWrapper(KernelControllerContextAction.java:111)
	at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchJoinPoint(KernelControllerContextAction.java:72)
	at org.jboss.kernel.plugins.dependency.LifecycleAction.installActionInternal(LifecycleAction.java:221)
	at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:54)
	at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:42)
	at org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62)
	at org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71)
	at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51)
	at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
	at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1652)
	at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:938)
	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:988)
	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:826)
	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:556)
	at org.jboss.system.ServiceController.doChange(ServiceController.java:688)
	at org.jboss.system.ServiceController.start(ServiceController.java:460)
	at org.jboss.system.deployers.ServiceDeployer.start(ServiceDeployer.java:163)
	at org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:99)
	at org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:46)
	at org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer.internalDeploy(AbstractSimpleRealDeployer.java:62)
	at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:55)
	at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:179)
	at org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:1454)
	at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1172)
	at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1193)
	at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1113)
	at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
	at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1652)
	at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:938)
	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:988)
	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:826)
	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:556)
	at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:789)
	at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:699)
	at org.jboss.system.server.profileservice.repository.MainDeployerAdapter.process(MainDeployerAdapter.java:117)
	at org.jboss.system.server.profileservice.repository.ProfileDeployAction.install(ProfileDeployAction.java:70)
	at org.jboss.system.server.profileservice.repository.AbstractProfileAction.install(AbstractProfileAction.java:53)
	at org.jboss.system.server.profileservice.repository.AbstractProfileService.install(AbstractProfileService.java:403)
	at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
	at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1652)
	at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:938)
	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:988)
	at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:778)
	at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:543)
	at org.jboss.system.server.profileservice.repository.AbstractProfileService.registerProfile(AbstractProfileService.java:308)
	at org.jboss.system.server.profileservice.ProfileServiceBootstrap.start(ProfileServiceBootstrap.java:256)
	at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:461)
	at org.jboss.Main.boot(Main.java:221)
	at org.jboss.Main$1.run(Main.java:556)
	at java.lang.Thread.run(Thread.java:662)
Caused by: org.jboss.soa.esb.services.registry.RegistryException: 
	at org.jboss.internal.soa.esb.services.registry.JAXRRegistryImpl.registerEPR(JAXRRegistryImpl.java:213)
	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 org.jboss.internal.soa.esb.services.registry.RegistryService$1.invoke(RegistryService.java:61)
	at $Proxy326.registerEPR(Unknown Source)
	at org.jboss.internal.soa.esb.services.registry.CachingRegistryInterceptor.registerEPR(CachingRegistryInterceptor.java:165)
	at org.jboss.internal.soa.esb.services.registry.InVMRegistryInterceptor.registerEPR(InVMRegistryInterceptor.java:47)
	at org.jboss.soa.esb.services.registry.RegistryFactory$HeadRegistryInterceptor.registerEPR(RegistryFactory.java:242)
	at org.jboss.soa.esb.listeners.RegistryUtil.register(RegistryUtil.java:150)
	at org.jboss.soa.esb.listeners.message.MessageAwareListener.doInitialise(MessageAwareListener.java:197)
	... 66 more
Caused by: javax.xml.registry.JAXRException: 
	at org.apache.ws.scout.registry.BusinessLifeCycleManagerImpl.getAuthToken(BusinessLifeCycleManagerImpl.java:889)
	at org.apache.ws.scout.registry.BusinessLifeCycleManagerImpl.executeOperation(BusinessLifeCycleManagerImpl.java:568)
	at org.apache.ws.scout.registry.BusinessLifeCycleManagerImpl.saveServiceBindings(BusinessLifeCycleManagerImpl.java:470)
	at org.jboss.internal.soa.esb.services.registry.JAXRRegistryImpl.saveRegistryObject(JAXRRegistryImpl.java:843)
	at org.jboss.internal.soa.esb.services.registry.JAXRRegistryImpl.registerEPR(JAXRRegistryImpl.java:211)
	... 77 more
Caused by: 
	at org.apache.ws.scout.registry.RegistryImpl.execute(RegistryImpl.java:308)
	at org.apache.ws.scout.registry.RegistryImpl.getAuthToken(RegistryImpl.java:823)
	at org.apache.ws.scout.registry.BusinessLifeCycleManagerImpl.getAuthToken(BusinessLifeCycleManagerImpl.java:885)
	... 81 more
14:49:51,396 INFO  [EsbDeployment] Destroying 'jbossesb.esb'

Problem is probably caused by scout library, for systinet there is need to use uddi v2 specification, which not specifies the security url, getAuthToken is done over publish url. 

As can be seen from wireshark dump below, POST request is wrongly sent to security url. In DEV1 build it worked ok.

POST /registry/uddi/security HTTP/1.0
Content-Type: text/xml; charset=utf-8
Accept: application/soap+xml, application/dime, multipart/related, text/*
User-Agent: Axis/1.4
Host: vmg29.mw.lab.eng.bos.redhat.com:8080
Cache-Control: no-cache
Pragma: no-cache
SOAPAction: ""
Content-Length: 386

<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><ns1:get_authToken cred="changeit" generic="2.0" userID="admin" xmlns="urn:uddi-org:api_v2" xmlns:ns1="urn:uddi-org:api_v2"/></soapenv:Body></soapenv:Envelope>HTTP/1.1 500 Internal Server Error
Server: Apache-Coyote/1.1
X-Powered-By: Servlet 2.4; JBoss-4.3.0.GA_CP06 (build: SVNTag=JBPAPP_4_3_0_GA_CP06 date=200907141446)/JBossWeb-2.0
Server: Systinet Server for Java/6.0 (Java/1.6.0_17; Linux/2.6.18-194.el5xen; build SSJ-6.0-20090617-0555)
SOAPAction: ""
Content-Type: text/xml;charset=UTF-8
Date: Wed, 25 Apr 2012 13:42:19 GMT
Connection: close

<?xml version="1.0" encoding="UTF-8"?>
<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/"><Body><Fault><faultcode xmlns="">Server</faultcode><faultstring xmlns="">No WSDL:Port has been found for the SOAP operation {urn:uddi-org:api_v2} get_authToken, service {urn:uddi-org:api_v3}UDDI_Security_SoapService</faultstring><detail xmlns=""><ijm:idoox-java-mapping.com.idoox.soap.ProcedureNotPresentException xmlns="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ijm="urn:idoox-java-mapping"><ijm:stack-trace>com.idoox.soap.ProcedureNotPresentException: No WSDL:Port has been found for the SOAP operation {urn:uddi-org:api_v2} get_authToken, service {urn:uddi-org:api_v3}UDDI_Security_SoapService
.at com.idoox.wasp.server.adaptor.RPCInstanceSelector.processPort(RPCInstanceSelector.java:418)
.at com.idoox.wasp.server.adaptor.RPCInstanceSelector.selectMethodByFirstElement(RPCInstanceSelector.java:136)
.at com.systinet.wasp.server.adaptor.JavaInvoker.beginInvoke(JavaInvoker.java:350)
.at com.idoox.wasp.server.adaptor.JavaAdaptorImpl.beginInvoke(JavaAdaptorImpl.java:63)
.at com.idoox.wasp.server.AdaptorTemplate.javaInvocation(AdaptorTemplate.java:514)
.at com.idoox.wasp.server.AdaptorTemplate.doDispatch(AdaptorTemplate.java:395)
.at com.idoox.wasp.server.AdaptorTemplate.dispatch(AdaptorTemplate.java:328)
.at com.idoox.wasp.server.ServiceConnector.dispatch(ServiceConnector.java:393)
.at com.systinet.wasp.ServiceManagerImpl.dispatchRequest(ServiceManagerImpl.java:638)
.at com.systinet.wasp.ServiceManagerImpl.dispatch(ServiceManagerImpl.java:473)
.at com.systinet.wasp.ServiceManagerImpl$DispatcherConnHandler.handlePost(ServiceManagerImpl.java:2594)
.at com.systinet.transport.servlet.server.Servlet.doPost(Unknown Source)
.at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
.at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
.at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
.at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
.at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
.at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
.at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
.at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
.at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
.at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
.at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
.at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
.at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
.at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
.at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
.at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
.at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
.at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
.at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
.at java.lang.Thread.run(Thread.java:636)
</ijm:stack-trace></ijm:idoox-java-mapping.com.idoox.soap.ProcedureNotPresentException></detail></Fault></Body></Envelope>
Comment 1 tcunning 2012-04-27 12:42:52 EDT
What do your scout properties look like?    What happens if you point the security URL to the publish location?
Comment 2 Jiri Sedlacek 2012-05-06 17:57:15 EDT
The registry section in jbossesb-properties.xml looks like this: 

<properties name="registry">
    	<property name="org.jboss.soa.esb.registry.queryManagerURI" value="http://vmg29.mw.lab.eng.bos.redhat.com:8080/registry/uddi/inquiry"/>
    	<property name="org.jboss.soa.esb.registry.lifeCycleManagerURI" value="http://vmg29.mw.lab.eng.bos.redhat.com:8080/registry/uddi/publishing"/>
	<property name="org.jboss.soa.esb.registry.securityManagerURI" value="http://vmg29.mw.lab.eng.bos.redhat.com:8080/registry/uddi/security"/>
    	<property name="org.jboss.soa.esb.registry.implementationClass" value="org.jboss.internal.soa.esb.services.registry.JAXRRegistryImpl"/>
    	<property name="org.jboss.soa.esb.registry.factoryClass" value="org.apache.ws.scout.registry.ConnectionFactoryImpl"/>
    	<property name="org.jboss.soa.esb.registry.user" value="admin"/>
    	<property name="org.jboss.soa.esb.registry.password" value="changeit"/>
        <property name="org.jboss.soa.esb.registry.uddi.maxRows" value="100"/>
    	<!-- the following parameter is scout specific to set the type of communication between scout and the UDDI (embedded, rmi, soap) -->
    	<property name="org.jboss.soa.esb.scout.proxy.transportClass" value="org.apache.ws.scout.transport.AxisTransport"/>
	<property name="org.jboss.soa.esb.scout.proxy.uddiVersion" value="2.0"/>
	<property name="org.jboss.soa.esb.scout.proxy.uddiNameSpace" value="urn:uddi-org:api_v2"/>

        <!-- specify the interceptors, in order -->
        <property name="org.jboss.soa.esb.registry.interceptors" value="org.jboss.internal.soa.esb.services.registry.InVMRegistryInterceptor, org.jboss.internal.soa.esb.services.registry.CachingRegistryInterceptor"/>

        <!-- The following properties modify the cache interceptor behaviour -->
        <property name="org.jboss.soa.esb.registry.cache.maxSize" value="100"/>
        <!-- If the validityPeriod is not specified then it will default to the same value as org.jboss.soa.esb.registry.cache.life
        <property name="org.jboss.soa.esb.registry.cache.validityPeriod" value="600000"/>
        -->

        <!-- Organization Category to be used by this deployment. -->
        <property name="org.jboss.soa.esb.registry.orgCategory" value="org.jboss.soa.esb.:category"/>
    </properties>


Pointing security URL to publish location solves the problem and jbossesb can be started.
Comment 3 tcunning 2012-05-07 09:14:21 EDT
As Jiri said above, pointing the security URL to the publish location solves this issue.   Jiri agreed over email that this issue could be closed.

Note You need to log in before you can comment on or make changes to this bug.