You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@juddi.apache.org by "Jeff Faath (JIRA)" <ju...@ws.apache.org> on 2007/09/19 00:19:43 UTC

[jira] Resolved: (JUDDI-78) jUDDI cannot accept null tModelKey in keyedReference element in a set_publisherAssertions call

     [ https://issues.apache.org/jira/browse/JUDDI-78?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jeff Faath resolved JUDDI-78.
-----------------------------

    Resolution: Fixed
      Assignee: Jeff Faath  (was: Steve Viens)

Per the UDDI v2 spec, when a tModelKey isn't passed on the KeyedReference of the publisherAssertion, an invalidKeyPassed fault should be thrown.  The code has been fixed to perfrom this check.

> jUDDI cannot accept null tModelKey in keyedReference element in a set_publisherAssertions call
> ----------------------------------------------------------------------------------------------
>
>                 Key: JUDDI-78
>                 URL: https://issues.apache.org/jira/browse/JUDDI-78
>             Project: jUDDI
>          Issue Type: Bug
>    Affects Versions: 0.9rc4
>         Environment: OS: Fedora Core 4 -- KERNEL=2.6.11-1.1369_FC4smp
> Software env: JOnAS 4.5.3 + postgresql backend + jUDDI v09.rc4
>            Reporter: Deepak Bhole
>            Assignee: Jeff Faath
>
> When creating an association, a SOAP message is sent to jUDDI with the set_publisherAssertions element/call. According to the UDDI V2 specifications, the set_publisherAssertions element has 0 or more publisherAssertion elements. These publisherAssertion elements have a keyedReference element, which in turn has an optional "tModelKey" attribute.
> A SOAP message[1] with a non-existent 'tModelKey' key attribute was sent from a client (Scout) to a server using jUDDI. According to the uddi specifications, that message should have been valid. However, the server threw an error indicating that a not-null constraint was violated in the datastore. 
> Couple of notes...
> 1. There are two faults at work here. In a proper scenario, the server should be sending a SOAP fault back, gracefully indicating that there was a problem. Instead, there is an exception[2] that gets thrown on server side. I will be opening another bug for this and will post the number in here for tracking purposes.
> 2. Currently, Scout has an associated bug that will prevent you from reproducing this error (it will throw an exception before SOAP message is even sent).  If you wish to reproduce this with Scout, you will have to add a check in it in modules/scout/src/java/org/apache/ws/scout/util/ScoutJaxrUddiHelper.java, line (approx.) 184 in getPubAssertionFromJAXRAssociation() so that kr.setTModelKey(key.getId()); gets called only if key != null. I am going to open a corresponding bug for Scout and will post the number here.
> [1] -- SOAP message sent from client:
> <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>
>                 <urn:set_publisherAssertions xmlns:urn="urn:uddi-org:api_v2" generic="2.0" xmlns="urn:uddi-org:api_v2">
>                         <urn:authInfo>authToken:9D0A9310-2F86-11DA-9310-B41FF8323FA2</urn:authInfo>
>                         <urn:publisherAssertion>
>                                 <urn:fromKey>BF367EF0-2F80-11DA-BEF0-A93E6C39B5A5</urn:fromKey>
>                                 <urn:toKey>BF3A2870-2F80-11DA-A870-B6F127499C12</urn:toKey>
>                                 <urn:keyedReference keyValue="RelatedTo" keyName="Concept"/>
>                         </urn:publisherAssertion>
>                 </urn:set_publisherAssertions>
>         </soapenv:Body>
> </soapenv:Envelope>
> [2] -- Exception seen on serverside:
> 2005-09-27 14:28:32,368 : PublisherAssertionTable.insert : ERROR: null value in column "tmodel_key" violates not-null constraint
> 2005-09-27 14:28:32,369 : SetPublisherAssertionsFunction.execute : org.postgresql.util.PSQLException: ERROR: null value in column "tmodel_key" violates not-null constraint
> 2005-09-27 14:28:32,370 : AbstractService.doPost : org.postgresql.util.PSQLException: ERROR: null value in column "tmodel_key" violates not-null constraint
> 2005-09-27 14:28:32,371 : AbstractService.doPost : A serious error has occured while assembling the SOAP Fault.
> java.lang.IllegalArgumentException: invalid QName local part
>         at javax.xml.namespace.QName.<init>(QName.java(Inlined Compiled Code))
>         at javax.xml.namespace.QName.<init>(QName.java(Compiled Code))
>         at org.apache.axis.AxisFault.setFaultCodeAsString(AxisFault.java:422)
>         at org.apache.axis.message.SOAPFault.setFaultCode(SOAPFault.java:226)
>         at org.apache.juddi.registry.AbstractService.doPost(AbstractService.java:317)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>         at sun.reflect.GeneratedMethodAccessor78.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java(Compiled Code))
>         at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
>         at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:243)
>         at java.security.AccessController.doPrivileged1(Native Method)
>         at java.security.AccessController.doPrivileged(AccessController.java(Compiled Code))
>         at javax.security.auth.Subject.doAsPrivileged(Subject.java:709)
>         at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:275)
>         at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:161)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:245)
>         at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:50)
>         at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:156)
>         at java.security.AccessController.doPrivileged1(Native Method)
>         at java.security.AccessController.doPrivileged(AccessController.java(Compiled Code))
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:152)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
>         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
>         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
>         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
>         at java.lang.Thread.run(Thread.java:568)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: juddi-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: juddi-dev-help@ws.apache.org