portals-wsrp4j-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bharath Kumar N <bharathkuma...@gmail.com>
Subject Re: Need some clarificatoins
Date Mon, 12 Feb 2007 21:04:27 GMT

     Thank you very much. I was able to get WSRP working on our
portlets.Appreciate all your explanations from day one.

Thanks again!!!

Diego Louzán-3 wrote:
> See inline response.
> Bharath Kumar N escribió:
>> Diego,
>>          Thanks a ton for the explanations.It really helped me to move
>> forward.
>>  But,as always i have a few more questions. :)
>> 1) How do we expose the WSRP producer as a web service.?
> The WSRP producer is already a web service. The endpoints specified by 
> Axis already implement the required interfaces.
>> 2) A basic question is How and where in the framework is the WSRP
>> Producer
>> exposed as a webservice ?
>>     As per my understanding here is the workflow,
>>     i) AxisServlet is the contact point for the Producer.
>>     ii) AxisServlet uses the file server-deploy.wsdd to specify which
>> classes implement which endpoints.
>>        Then it delegates the processing to the class specified on
>> server-deploy.wsdd.
>>     iii) In producer,each of these classes delegate their processing to
>> WSRPEngine
>>    Now where is the webservice coming into picture in this workflow? What
>> is
>> the web-service endpoint url to access the producer?
> The endpoint urls specified by Axis and accesible through your app 
> server (in this case, tomcat).
>> iii) We will not be using the proxyportlet because the portlets which we
>> have are not JSR168 complaint.So we will just register the  wsrp producer
>> web-service endpoint url  in the plumtree portal.So,thats the reason for
>> me
>> asking the way to expose the producer as a web service.
> If your portlets aren't jsr168, then WSRP4J Producer won't be able to 
> access them, you'll have to provide your own provider interface for 
> dealing with your local portlets.
>> Thanks
>> Bharath
>> dlouzan wrote:
>>> Hash: SHA1
>>> See inline response.
>>> Bharath Kumar N escribió:
>>>> Diego,
>>>>         I need some help from u'r side to tie a few loose ends in my
>>>> understanding of implementation WSRP.
>>>> We are not using Pluto as the provider.We have implemented our own
>>>> provider
>>>> factory and I have made the change in the
>>>> ..\producer\WEB-INF\classes\WSRPServices.properties
>>>> ** provider.factory=
>>>> com.slb.sis.dp.wsrp.producer.driver.ProviderFactoryImpl.
>>>> ** consumer.registry.factory =
>>>> org.apache.wsrp4j.producer.driver.ConsumerRegistryFactoryImpl {remains
>>>> the
>>>> same}.
>>>> So,my 1st goal  is to test the producer workflow.And next,Debug the
>>>> code
>>>> and
>>>> understand the workflow 
>>>> between 
>>>> *The Consumer and the Axis Engine( AxisServlet)
>>>> *Axis Engine and the WSRPEngine
>>>> *WSRPEngine and the Provider (implemented by us)
>>>> 1) We will be using the plumtree portal.And my understanding is that 
>>>> Plumtree portal will be the consumer.So,My belief is that consumer need 
>>>> not be implemented.Am I right?
>>> ProxyPortlet is a generic JSR-168 portlet that can act as a WSRP
>>> consumer. As long as your portal accepts JSR-168 portlets (or your
>>> portal provides its own WSRP consumer component) you won't have to
>>> implement any consumer.
>>>> 2)    The consumer calls the producer through the Urls
>>>> *http://localhost:8080/usland_wsrp_producer/WSRPBaseService {provider
>>>> implemented methods are working}
>>>> *http://localhost:8080/usland_wsrp_producer/WSRPServiceDescriptionService{provider
>>>> implemented methods are working}
>>>>   which will be registerd while registering the portlet.
>>>> Is my understanding right? how do I simulate it without actual portal? 
>>> You can use SwingConsumer as a test for your producer. It's a Swing
>>> standalone application that acts as a WSRP consumer. Keep in mind that
>>> its functionality is very limited and its serves only the purpose of
>>> easy testing.
>>>> I tried testing the functionality by calling 
>>>> http://localhost:8080/usland_wsrp_producer/WSRPServiceDescriptionService?method=getServiceDescription
>>>> and expected the output to xml format of
>>>> getServiceDescriptionResponse.But
>>>> it threw a 
>>>> fault NoTraget service WSRPServiceDescriptionService found. 
>>>> So how do I register the 4 interfaces service with the AxisServlet?
>>> If I'm understanding it correctly, you are using the old WSRP4J repos.
>>> Check the new producer in the SVN repos that is fully functional and
>>> it's easier to understand.
>>>     AxisServlet uses the file server-deploy.wsdd to specify which
>>> classes implement which endpoints. For instance:
>>> <service name="WSRPBaseService" ...>
>>> ...
>>>   <parameter name="className"
>>> value="org.apache.wsrp4j.commons.producer.binding.WSRPMarkupBindingImpl"/>
>>> ...
>>> </service>
>>> That declaration links the Markup interface to the class specified by
>>> the parameter tag. Then, these classes delegate their processing to
>>> WSRPEngine singleton. Check the example configuration for more details.
>>>> 3) What is the first thing which will be called by the Consumer ? 
>>>>    Is it the AxisServlet which will be the contact point ? 
>>>>    If not then ,when will the AxisServlet exactly be used in the whole
>>>> workflow?
>>> Yes, the AxisServlet is the contact point. Then it delegates the
>>> processing to the class specified on server-deploy.wsdd. In producer,
>>> each of these classes delegate their processing to WSRPEngine.
>>>> 4)When will the WSRPEngine be called.Is it the AxisServlet which calls
>>>> it
>>>> ?
>>> Already answered.
>>>> Thanks again for the help.Appreciate your patience.
>>>> Regards
>>>> Bharath
>>> Hope that helps. Regards.
>>> Diego.
>>>> dlouzan wrote:
>>>> Bharath Kumar N escribió:
>>>>>>> Hi Diego,
>>>>>>>     Thanks for the quick reply and the options too. I have gone
>>>>>>> through
>>>>>>> the
>>>>>>> WSRP Primer and surely it is 
>>>>>>> a good document to understand WSRP conceptually.
>>>>>>>    I am trying to understand the working of WSRP4J.The best way
>>>>>>> understand would be via an example.
>>>>>>> Say,Using the WSRP4J Producer "wsrp4j-producer" and the WSRP
>>>>>>> Consumer
>>>>>>> "wsrp4j-proxyportlet"
>>>>>>> I am trying to configure a simple JSR 168 portlet HelloWorld.
>>>>>>>    I appreciate your comments and feedback on the following points.

>>>>>>> Have divided the WSRP interaction between the portlet Producer
>>>>>>> the
>>>>>>> Consumer into :
>>>>>>> i) Interaction between Producer and the Portlet :
>>>>>>>      Which are the configuration files {xml or .properties files
>>>>>>> which
>>>>>>> the 
>>>>>>>      changes have to be made to configure the portlet as a Producer
>>>>>>> ii) Communication between the Producer and the Consumer :
>>>>>>>      The communication is via SOAP messages.Again Which are the
>>>>>>> configuration files {xml or .properties fiels }in which the changes
>>>>>>> have
>>>>>>> to
>>>>>>> be made for the interaction between the Consumer and Producer.
>>>>>>> iii) Communication between the Consumer and the portal(in my
>>>>>>> the
>>>>>>> portal
>>>>>>> is Plumtree):
>>>>>>>    This I assume is all to do with the registration of the Consumer
>>>>>>> in
>>>>>>> the
>>>>>>> Plumtree portal,instead of
>>>>>>>    the registration of HelloWorld portlet.
>>>>>>> Thanks
>>>>>>> Bharath
>>>>>>> dlouzan wrote:
>>>>>>> Bharath Kumar N escribió:
>>>>>>>>>> Hi,
>>>>>>>>>>   I'm doing some research on porting existing Portlets
>>>>>>>>>> WSRP.The
>>>>>>>>>> portlets
>>>>>>>>>> are not JSR-168 complaint. We are using the Plumtree
portal which
>>>>>>>>>> supports
>>>>>>>>>> WSRP.
>>>>>>>>>>  I'm having difficulty finding much information on
>>>>>>>>>> technical
>>>>>>>>>> aspects
>>>>>>>>>> of developing a WSRP Portlet, let alone porting 
 an existing
>>>>>>>>>> JSR-168
>>>>>>>>>> Portlet to WSRP.
>>>>>>>>>>  I have download WSRP4J source code and built the
>>>>>>>>>> trying
>>>>>>>>>> to
>>>>>>>>>> understand how it works.
>>>>>>>>>> Are there any resources that  you may know of that
can help us to
>>>>>>>>>> implement
>>>>>>>>>> the same ?  Appreciate any advice on the same
>>>>>>>>>>  Thanks
>>>>>>>>>>  Bharath
>>>>>>> Well, by your comments I understand that your two main problems
>>>>>>> (1)
>>>>>>> understanding how WSRP really works and (2) how to expose that
>>>>>>> functionality in a non-JSR-168 environment.
>>>>>>> About the first point there aren't many options around. The WSRP
>>>>>>> specification is the best of them although very hard to read.
If you
>>>>>>> haven't read it already, try the WSRPv1 Primer
>>>>>>> (http://www.oasis-open.org/committees/download.php/10539/wsrp-primer-1.0.html).
>>>>>>> It shows some of the communication involved in a very clear manner.
>>>>>>> On the second point, my experience has always been in a JSR-168
>>>>>>> environment. But WSRP4J source code is a nice example on how
>>>>>>> implement WSRP functionality besides JSR-168. In fact, you can
>>>>>>> the
>>>>>>> three commons packages and the two persistence ones on any other
>>>>>>> project
>>>>>>> (they don't have any strong dependencies on JSR-168 besides some
>>>>>>> utilities, they are completely reusable componentes for any producer
>>>>>>> or
>>>>>>> consumer implementation).
>>>>>>> Hope that helps.
>>>>>>> Regards.
>>>>>>> Diego.
>>>> Hello Bharath, I'm sorry for the late response but I've been very busy
>>>> and didn't have time to monitor the list. About your questions:
>>>> i)
>>>>     If you're using wsrp4j-producer, you don't have to make any changes
>>>> to your JSR-168 portlets. Just take your .war file containing the
>>>> portlets you want to expose and just use the deployer included (see
>>>> README.txt for details). Your portlets will be automagically exposed as
>>>> WSRP.
>>>>     That utility modifies the configuration files exposed by
>>>> PlutoPortal
>>>> (mainly the ones under WEB-INF/data). It also modifies the portlet.xml
>>>> file included on your portletapp so all the portlets delegate their
>>>> processing to the servlet included in Pluto.
>>>> ii)
>>>>     The communication between consumer and producer is standardized by
>>>> the WSRP specification. The README.txt specifies some extension points
>>>> you can configure (like Producer URL Writing support), but the
>>>> communication will work without that.
>>>> iii)
>>>>     You have to register proxyportlet into your portal. Each portal
>>>> includes its way to add JSR-168 portlets, so you'll have to read the
>>>> documentation. Once you have deployed proxyportlet, you have to
>>>> configure the remote portlets using the two configuration portlets
>>>> included in proxyportlet (there are some limitations, I'll try to
>>>> specify them in the README.txt this afternoon).
>>>> Regards.
>>>> Diego.
>>> Version: GnuPG v1.4.3 (GNU/Linux)
>>> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
>>> iD8DBQFFxwpWgyzZYflJelERAkoWAJ4j501tattk5doYiOviWlaBsNiWAACeMB3W
>>> swSfE4bvTtoao1m8FmPNjPI=
>>> =gX9U
>>> -----END PGP SIGNATURE-----

View this message in context: http://www.nabble.com/Help-%3A-Migrate-Portlets-to-WSRP-tf3023311.html#a8932750
Sent from the Wsrp4J - Dev mailing list archive at Nabble.com.

View raw message