You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wsrp4j-user@portals.apache.org by Michel Alessandrini <ws...@gmx-topmail.de> on 2005/12/14 10:00:18 UTC
proxyportlet-problem
Hello,
I tried to use the delivered calcportlet over the proxyportlet. But I got
the error message that the producer-id does not exist,
see the following log entries (on proxyportlet-side):
---
javax.portlet.PortletException: Error occured while retrieving markup
at
org.apache.wsrp4j.consumer.portlet.impl.ProxyPortlet.render(ProxyPortlet.java:455)
at org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:218)
at org.apache.pluto.core.PortletServlet.doPost(PortletServlet.java:163)
...
Nested Exception is org.apache.wsrp4j.exception.WSRPException: A producer
with this ID does not exists. Check configuration file.
at
org.apache.wsrp4j.exception.WSRPXHelper.getException(WSRPXHelper.java:723)
at org.apache.wsrp4j.exception.WSRPXHelper.throwX(WSRPXHelper.java:111)
at
org.apache.wsrp4j.consumer.portlet.impl.ProxyPortlet.getProducer(ProxyPortlet.java:786)
...
---
This error message is not traceable for me because I set the producer-id
correctly (I suppose).
I edited the configuration files as quoted below (like explained in the
wsrp4j-project):
Host 1: tomcat with the calc-portlet and the wsrp-app:
wsrp/WEB-INF/data/portletentityregistry.xml
--------------------------------------------
<portlet-entity-registry>
<application id="calc_1">
<definition-id>calc</definition-id>
<portlet id="1">
<definition-id>calc.JSR168CalcPortlet</definition-id>
</portlet>
</application>
</portlet-entity-registry>
Host 2: tomcat with the proxyportlet and the wsrp-app:
proxyportlet/WEB-INF/org.apache.wsrp4j.consumer.driver.ProducerImpl@wsrp4j-1.xml
--------------------------------------------------------------------------------
<Producer id="1" registrationRequired="true">
<registration-data>
<consumer-name>WSRP4J Proxy Portlet</consumer-name>
<consumer-agent>WSRP4J Proxy Portlet</consumer-agent>
</registration-data>
<markup-interface-url>http://localhost:8090/wsrp/wsrp4j/WSRPBaseService</markup-interface-url>
<service-description-interface-url>http://localhost:8090/wsrp/wsrp4j/WSRPServiceDescriptionService</service-description-interface-url>
<registration-interface-url>http://localhost:8090/wsrp/wsrp4j/WSRPRegistrationService</registration-interface-url>
<portlet-management-interface-url>http://localhost:8090/wsrp/wsrp4j/WSRPPortletManagementService</portlet-management-interface-url>
</Producer>
wsrp/WEB-INF/data/portletentityregistry.xml
-------------------------------------------
<portlet-entity-registry>
<application id="calc_2">
<definition-id>proxyportlet</definition-id>
<portlet id="2">
<definition-id>proxyportlet.ProxyPortlet</definition-id>
<preferences>
<pref-name>wsrp_portlet_handle</pref-name>
<pref-value>calc_1.1</pref-value>
<read-only>false</read-only>
</preferences>
<preferences>
<pref-name>wsrp_producer_id</pref-name>
<pref-value>1</pref-value>
<read-only>false</read-only>
</preferences>
</portlet>
</application>
</portlet-entity-registry>
As you can see, the producer with the id "1" is defined within the
proxyportlet. The addresses for the interfaces are correct.
If I use the calcportlet directly (without the proxyportlet) it will work
fine.
Does anybody have a solution or an idea???
Thanks!!
regards
Michel