You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wsrp4j-dev@portals.apache.org by "Julie MacNaught (JIRA)" <ws...@ws.apache.org> on 2005/05/16 22:09:16 UTC

[jira] Resolved: (WSRP4J-55) WSRP4J incorrectly assumes there's always valid registration information

     [ http://issues.apache.org/jira/browse/WSRP4J-55?page=all ]
     
Julie MacNaught resolved WSRP4J-55:
-----------------------------------

     Resolution: Fixed
    Fix Version: current (nightly)

> WSRP4J incorrectly assumes there's always valid registration information
> ------------------------------------------------------------------------
>
>          Key: WSRP4J-55
>          URL: http://issues.apache.org/jira/browse/WSRP4J-55
>      Project: WSRP4J
>         Type: Bug
>     Reporter: Diego Louzán
>      Fix For: current (nightly)

>
> From WSRP specification, section 6.1.9 "MarkupParams Type", page 31, line 29:
> « [O] ClientData clientData »
> The clientData structure in MarkupParams type is optional, it could be null. However, WSRP4J assumes there's always valid registration information. In case of WSRP4J, this registration information is in a file like portlets/proxyportlet/war/WEB-INF/persistence/producers/org.apache.wsrp4j.consumer.driver.ProducerImpl@wsrp4j-8081.xml:
> [...]
> <registration-data>
>     <consumer-name>WSRP4J Proxy Portlet</consumer-name>
>     <consumer-agent>WSRP4J Proxy Portlet</consumer-agent>
> </registration-data>
> [...]
> In relation to code provided in #WSRP4J-40, take a look at this code for class org.apache.wsrp4j.consumer.driver.PortletDriverImpl:
> private MarkupParams getMarkupParams(WSRPBaseRequest request)
> {
>     MarkupParams markupParams = new MarkupParams();
>     ClientData clientData = new ClientData();
>     // lets just set this to the consumer agent for now
>     clientData.setUserAgent(producer.getRegistrationData().getConsumerAgent());
>     markupParams.setClientData(clientData);
>     [...]
> }
> This code produces a NullPointerException when producer.getRegistrationData() == null, that is, when there's no registration info specified in the xml file. A possible solution is to recode it like this:
> private MarkupParams getMarkupParams(WSRPBaseRequest request)
> {
>     MarkupParams markupParams = new MarkupParams();
>         
>     ClientData clientData = null;
>     if (producer.getRegistrationData() != null)
>     {
>         clientData = new ClientData();
>         clientData.setUserAgent(producer.getRegistrationData().getConsumerAgent());
>     }
>     [...]
> }

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira