4 Replies Latest reply on Mar 19, 2008 1:03 PM by theute

    WSRP consumer agent trouble

    walfreund

      Hi folks,

      while trying to get SAP EP cosuming my WSRP-crap I get the following error:

      2008-03-13 15:42:13,261 ERROR [org.jboss.ws.core.jaxrpc.SOAPFaultHelperJAXRPC] SOAP request exception
      javax.xml.rpc.soap.SOAPFaultException: Could not register consumer named 'SAP'. 'SAP_EP6_SP9' is not a valid Consumer Ag
      ent.
       at org.jboss.portal.wsrp.WSRPExceptionFactory.createSOAPFaultException(WSRPExceptionFactory.java:126)
       at org.jboss.portal.wsrp.WSRPExceptionFactory.throwSOAPFaultException(WSRPExceptionFactory.java:88)


      Any clues on where I have to tweak the consumer agent???

      Found some JIRA messages and something about WSRPConstants...

      Thanks for your support!

      regards,
      Christian



        • 1. Re: WSRP consumer agent trouble
          claprun

          Seems like your consumer does not produce a valid Consumer Agent string. You might want to open a bug with your WSRP consumer provider...

          As per the specification:

          "WSRP specification" wrote:

          The consumerAgent value MUST start with "productName.majorVersion.minorVersion" where "productName" identifies the product the Consumer installed for its deployment, and majorVersion and minorVersion are vendor-defined indications of the version of its product. This string can then contain any additional characters/words the product or Consumer wish to supply.

          http://docs.oasis-open.org/wsrp/v2/wsrp-2.0-spec-cs-02.html#_RegistrationData

          SAP_EP6_SP9
          does not follow the WSRP specification, hence JBoss Portal rejects it as invalid. I could relax the validation in our producer but then it would not be WSRP-compliant... Then again, I have no idea why the specification mandates that format and I have seen several WSRP consumers providing non-conforming consumer agent strings... :/


          • 2. Re: WSRP consumer agent trouble
            walfreund

            Hi,

            thanks for your reply! I totally agree on your remarks about the WSRP specification and it definitely makes no sense at all to tweak the implementation of the JBoss Portal producer BUT on connecting the same SAP EP to an open Oracle WSRP test portal (http://portalstandards.oracle.com/portletapp/portlets?WSDL) the mispelled/malformed "consumer agent" string poses no threat to anyone and i can consume portlets, clap my hands and say "yeah!".

            That seems strange to me and makes me question all these standard-conforming marketing phrases around the world.

            however, I really like JBoss portal and gonna get it running. Word!

            thanks,
            Christian

            • 3. Re: WSRP consumer agent trouble
              claprun

               

              "walfreund" wrote:

              thanks for your reply! I totally agree on your remarks about the WSRP specification and it definitely makes no sense at all to tweak the implementation of the JBoss Portal producer BUT on connecting the same SAP EP to an open Oracle WSRP test portal (http://portalstandards.oracle.com/portletapp/portlets?WSDL) the mispelled/malformed "consumer agent" string poses no threat to anyone and i can consume portlets, clap my hands and say "yeah!".


              +1 for the musical reference! :)

              "walfreund" wrote:

              That seems strange to me and makes me question all these standard-conforming marketing phrases around the world.


              It is actually not that strange. I have seen enough such cases with the consumer agent not being specification-compliant that I have been tempted to remove the validation several times just so that it is easier for our users.
              I have several options:
              1. Keep a hard line as far as the specification goes. That makes us look like the bad guy as several producers are less strict and so will accept a non-conformant consumer agent (I know of at least 2 "big name" WSRP consumers that do not generate valid consumer agents). The only recourse then is to have our users who wish to use these WSRP consumers to contact their support and file for a bug... but we all know that with big, commercial products you might not see a fix before a while.

              2. Introduce a configuration option to enable/disable consumer agent validation but that makes our code more complex (and using our producer more complex as well) for something that shouldn't even happen if the specification had a TCK.

              3. Remove the consumer agent validation altogether because it seems that no one really cares about its format and the specification does not seem to leverage that specific format anywhere else either (i.e. the MUST in the specification might be too strong of a language since there doesn't seem to be a real value in providing a consumer agent formatted that way).

              The bigger issue here is the lack of TCK with the specification. Interoperability and, ultimately, users suffer from this situation... :(

              "walfreund" wrote:

              however, I really like JBoss portal and gonna get it running. Word!


              Thank you for not giving up on Portal when it would have been easy to do so because we are actually more compliant (on this particular aspect, as we don't claim perfection ^_^) than some of our competitors! :)

              • 4. Re: WSRP consumer agent trouble
                theute

                I would vote for 2.

                Make it strict by default so that users know what happens and ask the other party to start thinking about being compliant. (for a better compliant world)

                But being able to turn off the strict compliance, because we know how long it can be to get that fixed (or how expensive to upgrade). (There might be other places in the future where we will want to have that option)