You are viewing a plain text version of this content. The canonical link for it is here.
Posted to bridges-dev@portals.apache.org by Satish Sekharan <sa...@mun.ca> on 2005/07/29 14:00:21 UTC

struts portlet

Hi Ate,

I am sending the message again to this newly created list.

I am using the portal-struts-bridge to get a struts based UW Calendar 
client to work with uPortal. I wrote a uPortal implementation for the 
ServletContextProviderImpl interface with a wrapper for the response 
object. This wrapper rewraps the response object and always calls 
getOutputStream to write the response. This was needed because uPortal 
calls getWriter and the calendar filter calls getOutputStream.

Using the above, I got the calendar to render inside uPortal as a 
portlet. But when I click any url generated inside the portlet the 
window goes blank. I have double
checked that I am using the correct struts-portlet-bridge taglib but the 
portlet urls are still not generated correctly.

This is the information from the log file >>

2005-07-12 09:31:59,734 DEBUG 
[org.jasig.portal.container.PortletContainerImpl] 
PortletContainerImpl.portletService(E25B1FB8CA6D78E507E0D9AFC3A60310/86) 
called.
2005-07-12 09:32:00,165 ERROR 
[org.apache.struts.action.RequestProcessor] Invalid path 
/http://bluefin.cc.mun.ca:8080/cal/eventView was requested
2005-07-12 09:32:00,235 DEBUG [org.jasig.portal.ChannelRenderer] 
ChannelRenderer.Worker::run() : recorded instance character cache based 
on a key "INSTANCE_SCOPE_KEY"
2005-07-12 09:32:00,485 DEBUG [org.jasig.portal.UserInstance] 
UserInstance::renderState() : recorded transformation character block 
cache with key "2,userLayoutRootNode,system 
1current_structure=layoutfocusedTabID=83lastSessionTabID=no 
lastSessionTabID 
parametermode=viewnewNodeID=authenticated=trueuserName=Demo 
Userskin=immIIauthorizedChannelPublisher=trueauthorizedFragmentPublisher=trueac033741-d4fa-4027-ffe6-†™ìB? 
?????"

Any help would be appreciated.

Thanks,

Satish

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


Re: struts portlet

Posted by Satish Sekharan <sa...@mun.ca>.
I am not using the urlprefix in my stylesheet. This is the url created inside the calendar app after the html transformation.

<a class="holiday" href="/cal/eventView.do;jsessionid=6E0B8A4BB6EE6F5F6FF0590EA1E205F4?eventId=1">test event</a>

But I will try debugging the rewrite tag as you suggested.

Ate Douma wrote:

> Satish Sekharan wrote:
>
>> Inside header.jsp >>
>
> Ok. You didn't attach that one :-)
>
>>
>> <eventView><html:rewrite action="eventView.do"/></eventView>
>
> I'm puzzled how this could result in an 
> /http://bluefin.cc.mun.ca:8080/cal/eventView url.
> The Struts Bridge rewrite tag first lets the Struts tag itself 
> transform the tag to an url.
> That should lead to something like "/eventView".
> Then, the Struts Bridge will create an portlet url with a parameter 
> _spage=/eventView.
>
> So, where this is transformed to 
> _spage=/http://bluefin.cc.mun.ca.8080/cal/eventView I don't know for sure
> but I do suspect the xslt template.
>
> I noted that cal.xml contains
>       <urlprefix>
>         http://bluefin.cc.mun.ca:8080/cal
>       </urlprefix>
> Maybe that is injected somewhere by the template?
>
> If you can't find out quickly, I suggest debugging the Struts Bridge 
> rewrite tag. Put a break at line 114
> and you will be able to monitor the incoming url, the result from 
> Struts itself and the final result
> produced by the bridge.
>
>>
>> It is using the struts tags to create the links. This link is then 
>> included in the xml data and then it is used in the xslt tranformation.
>>
>> This is an example of a link that is created in the portlet using the 
>> struts bridge >>
>>
>> http://bluefin.cc.mun.ca:8080/uPortal/portlet-params@uP_portlet_action%253Dfalse%2526_spage%253D%252Fhttp%253A%252F%252Fbluefin%25252Ecc%25252Emun%25252Eca%253A8080%252Fcal%252FeventView%25252Edo@portlet-params.tag.d8f4b0a73dcc9f58.render.userLayoutRootNode.target.86.uP#8038586D11EC4AF81E0B20CE84F08347/86?eventId=1 
>>
>>
>> Ate Douma wrote:
>>
>>> Satish Sekharan wrote:
>>>
>>>> I just sent a email with some attachements. It just disappeared. I 
>>>> will send it again.
>>>
>>>
>>>
>>> Well, I've seen them already :-)
>>> As far as I can tell from this, you aren't using the Struts tags to 
>>> render
>>> the links are you?
>>>
>>> I guess the xslt template is doing that.
>>> In that case, you don't have a Struts Bridge problem but a general 
>>> JSR-168 one.
>>>
>>> You *must* use RenderResponse.createRenderURL() or 
>>> RenderResponse.createActionURL()
>>> to be able to communicate back to the portlet...
>>> The Struts Bridge tags does that under the covers (using 
>>> StrutsPortletURL).
>>>
>>> If you are *not* using the Struts Bridge tags, you need to use the 
>>> porlet api
>>> (or the porlet tags) yourself.
>>>
>>> Good luck,
>>>
>>> Ate
>>>
>>>>
>>>> Ate Douma wrote:
>>>>
>>>>> Satish,
>>>>>
>>>>> You don't give me much to go by for your problem.
>>>>> But the logged path "/http://bluefin.cc.mun.ca:8080/cal/eventView" 
>>>>> certainly
>>>>> doesn't look valid (note the '/' in front of the http:// part).
>>>>> Most likely you are not using the struts-bridge link (or resource) 
>>>>> tag correctly.
>>>>> Please provide a snippet from the jsp code and the related struts 
>>>>> mapping.
>>>>> Maybe then I'll be able to help you more.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
>>
>>
>>
>>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>


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


Re: struts portlet

Posted by Satish Sekharan <sa...@mun.ca>.
Ate Douma wrote:

> At least, we now know what the real problem is.
>
Yes! thank you for all your help. :)

>>
>> Ate Douma wrote:
>>
>>> Satish Sekharan wrote:
>>>
>>>> As you suggested I started debugging the Struts Bridge rewrite tag
>>>>
>>>> At line 102 after the Struts transform the tag to an url
>>>>
>>>> url = bodyContent.getString();
>>>>
>>>> The url variable is >>  
>>>> http://bluefin.cc.mun.ca:8080/cal/initialise.rdo
>>>
>>>
>>>
>>> While this probably isn't for the eventView.do I can understand the 
>>> problem
>>> now if Struts itself already returns a fully qualified url (which I 
>>> never encountered before).
>>>
>>> After looking at the Struts rewrite tag code (for Struts 1.2.4), the 
>>> only part I can
>>> think of this can happen is when it calls response.encodeURL(url).
>>> Please could you try to debug this as well (look at line 564 from 
>>> o.a.s.taglib.TagUtils.java)?
>>> If you use a different version of Struts, please let me know.
>>>
>>>>
>>>> Ate Douma wrote:
>>>>
>>>>> Satish Sekharan wrote:
>>>>>
>>>>>> Inside header.jsp >>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Ok. You didn't attach that one :-)
>>>>>
>>>>>>
>>>>>> <eventView><html:rewrite action="eventView.do"/></eventView>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> I'm puzzled how this could result in an 
>>>>> /http://bluefin.cc.mun.ca:8080/cal/eventView url.
>>>>> The Struts Bridge rewrite tag first lets the Struts tag itself 
>>>>> transform the tag to an url.
>>>>> That should lead to something like "/eventView".
>>>>> Then, the Struts Bridge will create an portlet url with a 
>>>>> parameter _spage=/eventView.
>>>>>
>>>>> So, where this is transformed to 
>>>>> _spage=/http://bluefin.cc.mun.ca.8080/cal/eventView I don't know 
>>>>> for sure
>>>>> but I do suspect the xslt template.
>>>>>
>>>>> I noted that cal.xml contains
>>>>>       <urlprefix>
>>>>>         http://bluefin.cc.mun.ca:8080/cal
>>>>>       </urlprefix>
>>>>> Maybe that is injected somewhere by the template?
>>>>>
>>>>> If you can't find out quickly, I suggest debugging the Struts 
>>>>> Bridge rewrite tag. Put a break at line 114
>>>>> and you will be able to monitor the incoming url, the result from 
>>>>> Struts itself and the final result
>>>>> produced by the bridge.
>>>>>
>>>>>>
>>>>>> It is using the struts tags to create the links. This link is 
>>>>>> then included in the xml data and then it is used in the xslt 
>>>>>> tranformation.
>>>>>>
>>>>>> This is an example of a link that is created in the portlet using 
>>>>>> the struts bridge >>
>>>>>>
>>>>>> http://bluefin.cc.mun.ca:8080/uPortal/portlet-params@uP_portlet_action%253Dfalse%2526_spage%253D%252Fhttp%253A%252F%252Fbluefin%25252Ecc%25252Emun%25252Eca%253A8080%252Fcal%252FeventView%25252Edo@portlet-params.tag.d8f4b0a73dcc9f58.render.userLayoutRootNode.target.86.uP#8038586D11EC4AF81E0B20CE84F08347/86?eventId=1 
>>>>>>
>>>>>>
>>>>>> Ate Douma wrote:
>>>>>>
>>>>>>> Satish Sekharan wrote:
>>>>>>>
>>>>>>>> I just sent a email with some attachements. It just 
>>>>>>>> disappeared. I will send it again.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Well, I've seen them already :-)
>>>>>>> As far as I can tell from this, you aren't using the Struts tags 
>>>>>>> to render
>>>>>>> the links are you?
>>>>>>>
>>>>>>> I guess the xslt template is doing that.
>>>>>>> In that case, you don't have a Struts Bridge problem but a 
>>>>>>> general JSR-168 one.
>>>>>>>
>>>>>>> You *must* use RenderResponse.createRenderURL() or 
>>>>>>> RenderResponse.createActionURL()
>>>>>>> to be able to communicate back to the portlet...
>>>>>>> The Struts Bridge tags does that under the covers (using 
>>>>>>> StrutsPortletURL).
>>>>>>>
>>>>>>> If yo

Re: struts portlet

Posted by Satish Sekharan <sa...@mun.ca>.
Changed org.apache.portals.bridges.struts.PortletServletResponseWrapper

diff -u -r1.3 PortletServletResponseWrapper.java
--- PortletServletResponseWrapper.java    4 Feb 2005 17:34:26 -0000    1.3
+++ PortletServletResponseWrapper.java    1 Aug 2005 11:57:02 -0000
@@ -46,10 +46,13 @@
     public String encodeURL(String path)
     {
+        /*
         if (actionResponse)
             return path;
         else
             return super.encodeURL(path);
+         */
+        return path;
     }

Now the urls are rendered correctly inside uPortal, but clicking the 
link seems to do nothing. It renders the same page again and again.

Example of an url to view an event >>
http://bluefin.cc.mun.ca:8080/uPortal/portlet-params@uP_portlet_action%253Dtrue%2526_spage%253D%252FeventView%25252Edo%2526_sorig%253D%252FshowMain%25252Erdo@portlet-params.tag.121ab2b24a79c61c.render.userLayoutRootNode.target.86.uP#3E1797A49EC1A2EC56613BFFF543932A/86?eventId=1

Ate Douma wrote:

> Satish Sekharan wrote:
>
>> Looked at the Struts rewrite tag code (for Struts 1.2.4) line 569 >>
>>
>>       if (pageContext.getSession() != null) {
>>            HttpServletResponse response = (HttpServletResponse) 
>> pageContext.getResponse();
>>            if (redirect) {
>>                return (response.encodeRedirectURL(url.toString()));
>>            } else {
>> ==>         return (response.encodeURL(url.toString()));
>>            }
>>        } else {
>>            return (url.toString());
>>        }
>>
>> url  variable >> /cal/initialise.rdo
>>
>> response.encodeURL(url.toString()) >> 
>> http://bluefin.cc.mun.ca:8080/cal/initialise.rdo
>
> As I expected :-(
>
> A bit weird implementation by uPortal of the response.encodeURL if you 
> ask me
> and clearly something I'd never expect from the rewrite tag...
>
> I'll have to think about this one.
> Because now a hardcoded url is returned for a internal Struts action, 
> I'm not sure how to distinguish
> these from other hardcoded urls which are *not* meant to be rendered 
> as portlet url.
>
> Anyways, it'll have to wait until after this weekend (sorry: too much 
> other things to look after).
> At least, we now know what the real problem is.
>
>>
>> Ate Douma wrote:
>>
>>> Satish Sekharan wrote:
>>>
>>>> As you suggested I started debugging the Struts Bridge rewrite tag
>>>>
>>>> At line 102 after the Struts transform the tag to an url
>>>>
>>>> url = bodyContent.getString();
>>>>
>>>> The url variable is >>  
>>>> http://bluefin.cc.mun.ca:8080/cal/initialise.rdo
>>>
>>>
>>>
>>> While this probably isn't for the eventView.do I can understand the 
>>> problem
>>> now if Struts itself already returns a fully qualified url (which I 
>>> never encountered before).
>>>
>>> After looking at the Struts rewrite tag code (for Struts 1.2.4), the 
>>> only part I can
>>> think of this can happen is when it calls response.encodeURL(url).
>>> Please could you try to debug this as well (look at line 564 from 
>>> o.a.s.taglib.TagUtils.java)?
>>> If you use a different version of Struts, please let me know.
>>>
>>>>
>>>> Ate Douma wrote:
>>>>
>>>>> Satish Sekharan wrote:
>>>>>
>>>>>> Inside header.jsp >>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Ok. You didn't attach that one :-)
>>>>>
>>>>>>
>>>>>> <eventView><html:rewrite action="eventView.do"/></eventView>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> I'm puzzled how this could result in an 
>>>>> /http://bluefin.cc.mun.ca:8080/cal/eventView url.
>>>>> The Struts Bridge rewrite tag first lets the Struts tag itself 
>>>>> transform the tag to an url.
>>>>> That should lead to something like "/eventView".
>>>>> Then, the Struts Bridge will create an portlet url with a 
>>>>> parameter _spage=/eventView.
>>>>>
>>>>> So, where this is transformed to 
>>>>> _spage=/http://bluefin.cc.mun.ca.8080/cal/eventView I don't know 
>>>>> for sure
>>>>> but I do suspect the xslt template.
>>>>>
>>>>> I noted that cal.xml contains
>>>>>       <urlprefix>
>>>>>         http://bluefin.cc.mun.ca:8080/cal
>>>>>       </urlprefix>
>>>>> Maybe that is injected somewhere by the template?
>>>>>
>>>>> If you can't find out quickly, I suggest debugging the Struts 
>>>>> Bridge rewrite tag. Put a break at line 114
>>>>> and you will be able to monitor the incoming url, the result from 
>>>>> Struts itself and the final result
>>>>> produced by the bridge.
>>>>>
>>>>>>
>>>>>> It is using the struts tags to create the links. This link is 
>>>>>> then included in the xml data and then it is used in the xslt 
>>>>>> tranformation.
>>>>>>
>>>>>> This is an example of a link that is created in the portlet using 
>>>>>> the struts bridge >>
>>>>>>
>>>>>> http://bluefin.cc.mun.ca:8080/uPortal/portlet-params@uP_portlet_action%253Dfalse%2526_spage%253D%252Fhttp%253A%252F%252Fbluefin%25252Ecc%25252Emun%25252Eca%253A8080%252Fcal%252FeventView%25252Edo@portlet-params.tag.d8f4b0a73dcc9f58.render.userLayoutRootNode.target.86.uP#8038586D11EC4AF81E0B20CE84F08347/86?eventId=1 
>>>>>>
>>>>>>
>>>>>> Ate Douma wrote:
>>>>>>
>>>>>>> Satish Sekharan wrote:
>>>>>>>
>>>>>>>> I just sent a email with some attachements. It just 
>>>>>>>> disappeared. I will send it again.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Well, I've seen them already :-)
>>>>>>> As far as I can tell from this, you aren't using the Struts tags 
>>>>>>> to render
>>>>>>> the links are you?
>>>>>>>
>>>>>>> I guess the xslt template is doing that.
>>>>>>> In that case, you don't have a Struts Bridge problem but a 
>>>>>>> general JSR-168 one.
>>>>>>>
>>>>>>> You *must* use RenderResponse.createRenderURL() or 
>>>>>>> RenderResponse.createActionURL()
>>>>>>> to be able to communicate back to the portlet...
>>>>>>> The Struts Bridge tags does that under the covers (using 
>>>>>>> StrutsPortletURL).
>>>>>>>
>>>>>>> If you are *not* using the Struts Bridge tags, you need to use 
>>>>>>> the porlet api
>>>>>>> (or the porlet tags) yourself.
>>>>>>>
>>>>>>> Good luck,
>>>>>>>
>>>>>>> Ate
>>>>>>>
>>>>>>>>
>>>>>>>> Ate Douma wrote:
>>>>>>>>
>>>>>>>>> Satish,
>>>>>>>>>
>>>>>>>>> You don't give me much to go by for your problem.
>>>>>>>>> But the logged path 
>>>>>>>>> "/http://bluefin.cc.mun.ca:8080/cal/eventView" certainly
>>>>>>>>> doesn't look valid (note the '/' in front of the http:// part).
>>>>>>>>> Most likely you are not using the struts-bridge link (or 
>>>>>>>>> resource) tag correctly.
>>>>>>>>> Please provide a snippet from the jsp code and the related 
>>>>>>>>> struts mapping.
>>>>>>>>> Maybe then I'll be able to help you more.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --------------------------------------------------------------------- 
>>>>>>>
>>>>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>>>>> For additional commands, e-mail: 
>>>>>>> bridges-dev-help@portals.apache.org
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --------------------------------------------------------------------- 
>>>>>>
>>>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
>>
>>
>>
>>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>


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


Re: struts portlet

Posted by Satish Sekharan <sa...@mun.ca>.
Any luck fixing the url problem ??

Ate Douma wrote:

> Satish Sekharan wrote:
>
>> Looked at the Struts rewrite tag code (for Struts 1.2.4) line 569 >>
>>
>>       if (pageContext.getSession() != null) {
>>            HttpServletResponse response = (HttpServletResponse) 
>> pageContext.getResponse();
>>            if (redirect) {
>>                return (response.encodeRedirectURL(url.toString()));
>>            } else {
>> ==>         return (response.encodeURL(url.toString()));
>>            }
>>        } else {
>>            return (url.toString());
>>        }
>>
>> url  variable >> /cal/initialise.rdo
>>
>> response.encodeURL(url.toString()) >> 
>> http://bluefin.cc.mun.ca:8080/cal/initialise.rdo
>
> As I expected :-(
>
> A bit weird implementation by uPortal of the response.encodeURL if you 
> ask me
> and clearly something I'd never expect from the rewrite tag...
>
> I'll have to think about this one.
> Because now a hardcoded url is returned for a internal Struts action, 
> I'm not sure how to distinguish
> these from other hardcoded urls which are *not* meant to be rendered 
> as portlet url.
>
> Anyways, it'll have to wait until after this weekend (sorry: too much 
> other things to look after).
> At least, we now know what the real problem is.
>
>>
>> Ate Douma wrote:
>>
>>> Satish Sekharan wrote:
>>>
>>>> As you suggested I started debugging the Struts Bridge rewrite tag
>>>>
>>>> At line 102 after the Struts transform the tag to an url
>>>>
>>>> url = bodyContent.getString();
>>>>
>>>> The url variable is >>  
>>>> http://bluefin.cc.mun.ca:8080/cal/initialise.rdo
>>>
>>>
>>>
>>> While this probably isn't for the eventView.do I can understand the 
>>> problem
>>> now if Struts itself already returns a fully qualified url (which I 
>>> never encountered before).
>>>
>>> After looking at the Struts rewrite tag code (for Struts 1.2.4), the 
>>> only part I can
>>> think of this can happen is when it calls response.encodeURL(url).
>>> Please could you try to debug this as well (look at line 564 from 
>>> o.a.s.taglib.TagUtils.java)?
>>> If you use a different version of Struts, please let me know.
>>>
>>>>
>>>> Ate Douma wrote:
>>>>
>>>>> Satish Sekharan wrote:
>>>>>
>>>>>> Inside header.jsp >>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Ok. You didn't attach that one :-)
>>>>>
>>>>>>
>>>>>> <eventView><html:rewrite action="eventView.do"/></eventView>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> I'm puzzled how this could result in an 
>>>>> /http://bluefin.cc.mun.ca:8080/cal/eventView url.
>>>>> The Struts Bridge rewrite tag first lets the Struts tag itself 
>>>>> transform the tag to an url.
>>>>> That should lead to something like "/eventView".
>>>>> Then, the Struts Bridge will create an portlet url with a 
>>>>> parameter _spage=/eventView.
>>>>>
>>>>> So, where this is transformed to 
>>>>> _spage=/http://bluefin.cc.mun.ca.8080/cal/eventView I don't know 
>>>>> for sure
>>>>> but I do suspect the xslt template.
>>>>>
>>>>> I noted that cal.xml contains
>>>>>       <urlprefix>
>>>>>         http://bluefin.cc.mun.ca:8080/cal
>>>>>       </urlprefix>
>>>>> Maybe that is injected somewhere by the template?
>>>>>
>>>>> If you can't find out quickly, I suggest debugging the Struts 
>>>>> Bridge rewrite tag. Put a break at line 114
>>>>> and you will be able to monitor the incoming url, the result from 
>>>>> Struts itself and the final result
>>>>> produced by the bridge.
>>>>>
>>>>>>
>>>>>> It is using the struts tags to create the links. This link is 
>>>>>> then included in the xml data and then it is used in the xslt 
>>>>>> tranformation.
>>>>>>
>>>>>> This is an example of a link that is created in the portlet using 
>>>>>> the struts bridge >>
>>>>>>
>>>>>> http://bluefin.cc.mun.ca:8080/uPortal/portlet-params@uP_portlet_action%253Dfalse%2526_spage%253D%252Fhttp%253A%252F%252Fbluefin%25252Ecc%25252Emun%25252Eca%253A8080%252Fcal%252FeventView%25252Edo@portlet-params.tag.d8f4b0a73dcc9f58.render.userLayoutRootNode.target.86.uP#8038586D11EC4AF81E0B20CE84F08347/86?eventId=1 
>>>>>>
>>>>>>
>>>>>> Ate Douma wrote:
>>>>>>
>>>>>>> Satish Sekharan wrote:
>>>>>>>
>>>>>>>> I just sent a email with some attachements. It just 
>>>>>>>> disappeared. I will send it again.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Well, I've seen them already :-)
>>>>>>> As far as I can tell from this, you aren't using the Struts tags 
>>>>>>> to render
>>>>>>> the links are you?
>>>>>>>
>>>>>>> I guess the xslt template is doing that.
>>>>>>> In that case, you don't have a Struts Bridge problem but a 
>>>>>>> general JSR-168 one.
>>>>>>>
>>>>>>> You *must* use RenderResponse.createRenderURL() or 
>>>>>>> RenderResponse.createActionURL()
>>>>>>> to be able to communicate back to the portlet...
>>>>>>> The Struts Bridge tags does that under the covers (using 
>>>>>>> StrutsPortletURL).
>>>>>>>
>>>>>>> If you are *not* using the Struts Bridge tags, you need to use 
>>>>>>> the porlet api
>>>>>>> (or the porlet tags) yourself.
>>>>>>>
>>>>>>> Good luck,
>>>>>>>
>>>>>>> Ate
>>>>>>>
>>>>>>>>
>>>>>>>> Ate Douma wrote:
>>>>>>>>
>>>>>>>>> Satish,
>>>>>>>>>
>>>>>>>>> You don't give me much to go by for your problem.
>>>>>>>>> But the logged path 
>>>>>>>>> "/http://bluefin.cc.mun.ca:8080/cal/eventView" certainly
>>>>>>>>> doesn't look valid (note the '/' in front of the http:// part).
>>>>>>>>> Most likely you are not using the struts-bridge link (or 
>>>>>>>>> resource) tag correctly.
>>>>>>>>> Please provide a snippet from the jsp code and the related 
>>>>>>>>> struts mapping.
>>>>>>>>> Maybe then I'll be able to help you more.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --------------------------------------------------------------------- 
>>>>>>>
>>>>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>>>>> For additional commands, e-mail: 
>>>>>>> bridges-dev-help@portals.apache.org
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --------------------------------------------------------------------- 
>>>>>>
>>>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
>>
>>
>>
>>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>


-- 
Satish Sekharan . . .
 Programmer Intern // ccwebworks // Computing & Communications
 Memorial University of Newfoundland // St. John's, NL, Canada 


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


Re: struts portlet

Posted by Ate Douma <at...@douma.nu>.
Satish Sekharan wrote:
> Looked at the Struts rewrite tag code (for Struts 1.2.4) line 569 >>
> 
>       if (pageContext.getSession() != null) {
>            HttpServletResponse response = (HttpServletResponse) 
> pageContext.getResponse();
>            if (redirect) {
>                return (response.encodeRedirectURL(url.toString()));
>            } else {
> ==>         return (response.encodeURL(url.toString()));
>            }
>        } else {
>            return (url.toString());
>        }
> 
> url  variable >> /cal/initialise.rdo
> 
> response.encodeURL(url.toString()) >> 
> http://bluefin.cc.mun.ca:8080/cal/initialise.rdo
As I expected :-(

A bit weird implementation by uPortal of the response.encodeURL if you ask me
and clearly something I'd never expect from the rewrite tag...

I'll have to think about this one.
Because now a hardcoded url is returned for a internal Struts action, I'm not sure how to distinguish
these from other hardcoded urls which are *not* meant to be rendered as portlet url.

Anyways, it'll have to wait until after this weekend (sorry: too much other things to look after).
At least, we now know what the real problem is.

> 
> Ate Douma wrote:
> 
>> Satish Sekharan wrote:
>>
>>> As you suggested I started debugging the Struts Bridge rewrite tag
>>>
>>> At line 102 after the Struts transform the tag to an url
>>>
>>> url = bodyContent.getString();
>>>
>>> The url variable is >>  http://bluefin.cc.mun.ca:8080/cal/initialise.rdo
>>
>>
>> While this probably isn't for the eventView.do I can understand the 
>> problem
>> now if Struts itself already returns a fully qualified url (which I 
>> never encountered before).
>>
>> After looking at the Struts rewrite tag code (for Struts 1.2.4), the 
>> only part I can
>> think of this can happen is when it calls response.encodeURL(url).
>> Please could you try to debug this as well (look at line 564 from 
>> o.a.s.taglib.TagUtils.java)?
>> If you use a different version of Struts, please let me know.
>>
>>>
>>> Ate Douma wrote:
>>>
>>>> Satish Sekharan wrote:
>>>>
>>>>> Inside header.jsp >>
>>>>
>>>>
>>>>
>>>>
>>>> Ok. You didn't attach that one :-)
>>>>
>>>>>
>>>>> <eventView><html:rewrite action="eventView.do"/></eventView>
>>>>
>>>>
>>>>
>>>>
>>>> I'm puzzled how this could result in an 
>>>> /http://bluefin.cc.mun.ca:8080/cal/eventView url.
>>>> The Struts Bridge rewrite tag first lets the Struts tag itself 
>>>> transform the tag to an url.
>>>> That should lead to something like "/eventView".
>>>> Then, the Struts Bridge will create an portlet url with a parameter 
>>>> _spage=/eventView.
>>>>
>>>> So, where this is transformed to 
>>>> _spage=/http://bluefin.cc.mun.ca.8080/cal/eventView I don't know for 
>>>> sure
>>>> but I do suspect the xslt template.
>>>>
>>>> I noted that cal.xml contains
>>>>       <urlprefix>
>>>>         http://bluefin.cc.mun.ca:8080/cal
>>>>       </urlprefix>
>>>> Maybe that is injected somewhere by the template?
>>>>
>>>> If you can't find out quickly, I suggest debugging the Struts Bridge 
>>>> rewrite tag. Put a break at line 114
>>>> and you will be able to monitor the incoming url, the result from 
>>>> Struts itself and the final result
>>>> produced by the bridge.
>>>>
>>>>>
>>>>> It is using the struts tags to create the links. This link is then 
>>>>> included in the xml data and then it is used in the xslt 
>>>>> tranformation.
>>>>>
>>>>> This is an example of a link that is created in the portlet using 
>>>>> the struts bridge >>
>>>>>
>>>>> http://bluefin.cc.mun.ca:8080/uPortal/portlet-params@uP_portlet_action%253Dfalse%2526_spage%253D%252Fhttp%253A%252F%252Fbluefin%25252Ecc%25252Emun%25252Eca%253A8080%252Fcal%252FeventView%25252Edo@portlet-params.tag.d8f4b0a73dcc9f58.render.userLayoutRootNode.target.86.uP#8038586D11EC4AF81E0B20CE84F08347/86?eventId=1 
>>>>>
>>>>>
>>>>> Ate Douma wrote:
>>>>>
>>>>>> Satish Sekharan wrote:
>>>>>>
>>>>>>> I just sent a email with some attachements. It just disappeared. 
>>>>>>> I will send it again.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Well, I've seen them already :-)
>>>>>> As far as I can tell from this, you aren't using the Struts tags 
>>>>>> to render
>>>>>> the links are you?
>>>>>>
>>>>>> I guess the xslt template is doing that.
>>>>>> In that case, you don't have a Struts Bridge problem but a general 
>>>>>> JSR-168 one.
>>>>>>
>>>>>> You *must* use RenderResponse.createRenderURL() or 
>>>>>> RenderResponse.createActionURL()
>>>>>> to be able to communicate back to the portlet...
>>>>>> The Struts Bridge tags does that under the covers (using 
>>>>>> StrutsPortletURL).
>>>>>>
>>>>>> If you are *not* using the Struts Bridge tags, you need to use the 
>>>>>> porlet api
>>>>>> (or the porlet tags) yourself.
>>>>>>
>>>>>> Good luck,
>>>>>>
>>>>>> Ate
>>>>>>
>>>>>>>
>>>>>>> Ate Douma wrote:
>>>>>>>
>>>>>>>> Satish,
>>>>>>>>
>>>>>>>> You don't give me much to go by for your problem.
>>>>>>>> But the logged path 
>>>>>>>> "/http://bluefin.cc.mun.ca:8080/cal/eventView" certainly
>>>>>>>> doesn't look valid (note the '/' in front of the http:// part).
>>>>>>>> Most likely you are not using the struts-bridge link (or 
>>>>>>>> resource) tag correctly.
>>>>>>>> Please provide a snippet from the jsp code and the related 
>>>>>>>> struts mapping.
>>>>>>>> Maybe then I'll be able to help you more.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>>>>
>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
> 
> 
> 
> 
> 



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


Re: struts portlet

Posted by Satish Sekharan <sa...@mun.ca>.
Looked at the Struts rewrite tag code (for Struts 1.2.4) line 569 >>

       if (pageContext.getSession() != null) {
            HttpServletResponse response = (HttpServletResponse) 
pageContext.getResponse();
            if (redirect) {
                return (response.encodeRedirectURL(url.toString()));
            } else {
==>         return (response.encodeURL(url.toString()));
            }
        } else {
            return (url.toString());
        }

url  variable >> /cal/initialise.rdo

response.encodeURL(url.toString()) >> 
http://bluefin.cc.mun.ca:8080/cal/initialise.rdo

Ate Douma wrote:

> Satish Sekharan wrote:
>
>> As you suggested I started debugging the Struts Bridge rewrite tag
>>
>> At line 102 after the Struts transform the tag to an url
>>
>> url = bodyContent.getString();
>>
>> The url variable is >>  http://bluefin.cc.mun.ca:8080/cal/initialise.rdo
>
> While this probably isn't for the eventView.do I can understand the 
> problem
> now if Struts itself already returns a fully qualified url (which I 
> never encountered before).
>
> After looking at the Struts rewrite tag code (for Struts 1.2.4), the 
> only part I can
> think of this can happen is when it calls response.encodeURL(url).
> Please could you try to debug this as well (look at line 564 from 
> o.a.s.taglib.TagUtils.java)?
> If you use a different version of Struts, please let me know.
>
>>
>> Ate Douma wrote:
>>
>>> Satish Sekharan wrote:
>>>
>>>> Inside header.jsp >>
>>>
>>>
>>>
>>> Ok. You didn't attach that one :-)
>>>
>>>>
>>>> <eventView><html:rewrite action="eventView.do"/></eventView>
>>>
>>>
>>>
>>> I'm puzzled how this could result in an 
>>> /http://bluefin.cc.mun.ca:8080/cal/eventView url.
>>> The Struts Bridge rewrite tag first lets the Struts tag itself 
>>> transform the tag to an url.
>>> That should lead to something like "/eventView".
>>> Then, the Struts Bridge will create an portlet url with a parameter 
>>> _spage=/eventView.
>>>
>>> So, where this is transformed to 
>>> _spage=/http://bluefin.cc.mun.ca.8080/cal/eventView I don't know for 
>>> sure
>>> but I do suspect the xslt template.
>>>
>>> I noted that cal.xml contains
>>>       <urlprefix>
>>>         http://bluefin.cc.mun.ca:8080/cal
>>>       </urlprefix>
>>> Maybe that is injected somewhere by the template?
>>>
>>> If you can't find out quickly, I suggest debugging the Struts Bridge 
>>> rewrite tag. Put a break at line 114
>>> and you will be able to monitor the incoming url, the result from 
>>> Struts itself and the final result
>>> produced by the bridge.
>>>
>>>>
>>>> It is using the struts tags to create the links. This link is then 
>>>> included in the xml data and then it is used in the xslt 
>>>> tranformation.
>>>>
>>>> This is an example of a link that is created in the portlet using 
>>>> the struts bridge >>
>>>>
>>>> http://bluefin.cc.mun.ca:8080/uPortal/portlet-params@uP_portlet_action%253Dfalse%2526_spage%253D%252Fhttp%253A%252F%252Fbluefin%25252Ecc%25252Emun%25252Eca%253A8080%252Fcal%252FeventView%25252Edo@portlet-params.tag.d8f4b0a73dcc9f58.render.userLayoutRootNode.target.86.uP#8038586D11EC4AF81E0B20CE84F08347/86?eventId=1 
>>>>
>>>>
>>>> Ate Douma wrote:
>>>>
>>>>> Satish Sekharan wrote:
>>>>>
>>>>>> I just sent a email with some attachements. It just disappeared. 
>>>>>> I will send it again.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Well, I've seen them already :-)
>>>>> As far as I can tell from this, you aren't using the Struts tags 
>>>>> to render
>>>>> the links are you?
>>>>>
>>>>> I guess the xslt template is doing that.
>>>>> In that case, you don't have a Struts Bridge problem but a general 
>>>>> JSR-168 one.
>>>>>
>>>>> You *must* use RenderResponse.createRenderURL() or 
>>>>> RenderResponse.createActionURL()
>>>>> to be able to communicate back to the portlet...
>>>>> The Struts Bridge tags does that under the covers (using 
>>>>> StrutsPortletURL).
>>>>>
>>>>> If you are *not* using the Struts Bridge tags, you need to use the 
>>>>> porlet api
>>>>> (or the porlet tags) yourself.
>>>>>
>>>>> Good luck,
>>>>>
>>>>> Ate
>>>>>
>>>>>>
>>>>>> Ate Douma wrote:
>>>>>>
>>>>>>> Satish,
>>>>>>>
>>>>>>> You don't give me much to go by for your problem.
>>>>>>> But the logged path 
>>>>>>> "/http://bluefin.cc.mun.ca:8080/cal/eventView" certainly
>>>>>>> doesn't look valid (note the '/' in front of the http:// part).
>>>>>>> Most likely you are not using the struts-bridge link (or 
>>>>>>> resource) tag correctly.
>>>>>>> Please provide a snippet from the jsp code and the related 
>>>>>>> struts mapping.
>>>>>>> Maybe then I'll be able to help you more.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
>>
>>
>>
>>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>


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


Re: struts portlet

Posted by Ate Douma <at...@douma.nu>.
Satish Sekharan wrote:
> As you suggested I started debugging the Struts Bridge rewrite tag
> 
> At line 102 after the Struts transform the tag to an url
> 
> url = bodyContent.getString();
> 
> The url variable is >>  http://bluefin.cc.mun.ca:8080/cal/initialise.rdo
While this probably isn't for the eventView.do I can understand the problem
now if Struts itself already returns a fully qualified url (which I never encountered before).

After looking at the Struts rewrite tag code (for Struts 1.2.4), the only part I can
think of this can happen is when it calls response.encodeURL(url).
Please could you try to debug this as well (look at line 564 from o.a.s.taglib.TagUtils.java)?
If you use a different version of Struts, please let me know.

> 
> Ate Douma wrote:
> 
>> Satish Sekharan wrote:
>>
>>> Inside header.jsp >>
>>
>>
>> Ok. You didn't attach that one :-)
>>
>>>
>>> <eventView><html:rewrite action="eventView.do"/></eventView>
>>
>>
>> I'm puzzled how this could result in an 
>> /http://bluefin.cc.mun.ca:8080/cal/eventView url.
>> The Struts Bridge rewrite tag first lets the Struts tag itself 
>> transform the tag to an url.
>> That should lead to something like "/eventView".
>> Then, the Struts Bridge will create an portlet url with a parameter 
>> _spage=/eventView.
>>
>> So, where this is transformed to 
>> _spage=/http://bluefin.cc.mun.ca.8080/cal/eventView I don't know for sure
>> but I do suspect the xslt template.
>>
>> I noted that cal.xml contains
>>       <urlprefix>
>>         http://bluefin.cc.mun.ca:8080/cal
>>       </urlprefix>
>> Maybe that is injected somewhere by the template?
>>
>> If you can't find out quickly, I suggest debugging the Struts Bridge 
>> rewrite tag. Put a break at line 114
>> and you will be able to monitor the incoming url, the result from 
>> Struts itself and the final result
>> produced by the bridge.
>>
>>>
>>> It is using the struts tags to create the links. This link is then 
>>> included in the xml data and then it is used in the xslt tranformation.
>>>
>>> This is an example of a link that is created in the portlet using the 
>>> struts bridge >>
>>>
>>> http://bluefin.cc.mun.ca:8080/uPortal/portlet-params@uP_portlet_action%253Dfalse%2526_spage%253D%252Fhttp%253A%252F%252Fbluefin%25252Ecc%25252Emun%25252Eca%253A8080%252Fcal%252FeventView%25252Edo@portlet-params.tag.d8f4b0a73dcc9f58.render.userLayoutRootNode.target.86.uP#8038586D11EC4AF81E0B20CE84F08347/86?eventId=1 
>>>
>>>
>>> Ate Douma wrote:
>>>
>>>> Satish Sekharan wrote:
>>>>
>>>>> I just sent a email with some attachements. It just disappeared. I 
>>>>> will send it again.
>>>>
>>>>
>>>>
>>>>
>>>> Well, I've seen them already :-)
>>>> As far as I can tell from this, you aren't using the Struts tags to 
>>>> render
>>>> the links are you?
>>>>
>>>> I guess the xslt template is doing that.
>>>> In that case, you don't have a Struts Bridge problem but a general 
>>>> JSR-168 one.
>>>>
>>>> You *must* use RenderResponse.createRenderURL() or 
>>>> RenderResponse.createActionURL()
>>>> to be able to communicate back to the portlet...
>>>> The Struts Bridge tags does that under the covers (using 
>>>> StrutsPortletURL).
>>>>
>>>> If you are *not* using the Struts Bridge tags, you need to use the 
>>>> porlet api
>>>> (or the porlet tags) yourself.
>>>>
>>>> Good luck,
>>>>
>>>> Ate
>>>>
>>>>>
>>>>> Ate Douma wrote:
>>>>>
>>>>>> Satish,
>>>>>>
>>>>>> You don't give me much to go by for your problem.
>>>>>> But the logged path "/http://bluefin.cc.mun.ca:8080/cal/eventView" 
>>>>>> certainly
>>>>>> doesn't look valid (note the '/' in front of the http:// part).
>>>>>> Most likely you are not using the struts-bridge link (or resource) 
>>>>>> tag correctly.
>>>>>> Please provide a snippet from the jsp code and the related struts 
>>>>>> mapping.
>>>>>> Maybe then I'll be able to help you more.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
> 
> 
> 
> 
> 



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


Re: struts portlet

Posted by Satish Sekharan <sa...@mun.ca>.
The url variableis the same at line 114.

Satish Sekharan wrote:

> As you suggested I started debugging the Struts Bridge rewrite tag
>
> At line 102 after the Struts transform the tag to an url
>
> url = bodyContent.getString();
>
> The url variable is >>  http://bluefin.cc.mun.ca:8080/cal/initialise.rdo
>
> Ate Douma wrote:
>
>> Satish Sekharan wrote:
>>
>>> Inside header.jsp >>
>>
>>
>> Ok. You didn't attach that one :-)
>>
>>>
>>> <eventView><html:rewrite action="eventView.do"/></eventView>
>>
>>
>> I'm puzzled how this could result in an 
>> /http://bluefin.cc.mun.ca:8080/cal/eventView url.
>> The Struts Bridge rewrite tag first lets the Struts tag itself 
>> transform the tag to an url.
>> That should lead to something like "/eventView".
>> Then, the Struts Bridge will create an portlet url with a parameter 
>> _spage=/eventView.
>>
>> So, where this is transformed to 
>> _spage=/http://bluefin.cc.mun.ca.8080/cal/eventView I don't know for 
>> sure
>> but I do suspect the xslt template.
>>
>> I noted that cal.xml contains
>>       <urlprefix>
>>         http://bluefin.cc.mun.ca:8080/cal
>>       </urlprefix>
>> Maybe that is injected somewhere by the template?
>>
>> If you can't find out quickly, I suggest debugging the Struts Bridge 
>> rewrite tag. Put a break at line 114
>> and you will be able to monitor the incoming url, the result from 
>> Struts itself and the final result
>> produced by the bridge.
>>
>>>
>>> It is using the struts tags to create the links. This link is then 
>>> included in the xml data and then it is used in the xslt tranformation.
>>>
>>> This is an example of a link that is created in the portlet using 
>>> the struts bridge >>
>>>
>>> http://bluefin.cc.mun.ca:8080/uPortal/portlet-params@uP_portlet_action%253Dfalse%2526_spage%253D%252Fhttp%253A%252F%252Fbluefin%25252Ecc%25252Emun%25252Eca%253A8080%252Fcal%252FeventView%25252Edo@portlet-params.tag.d8f4b0a73dcc9f58.render.userLayoutRootNode.target.86.uP#8038586D11EC4AF81E0B20CE84F08347/86?eventId=1 
>>>
>>>
>>> Ate Douma wrote:
>>>
>>>> Satish Sekharan wrote:
>>>>
>>>>> I just sent a email with some attachements. It just disappeared. I 
>>>>> will send it again.
>>>>
>>>>
>>>>
>>>>
>>>> Well, I've seen them already :-)
>>>> As far as I can tell from this, you aren't using the Struts tags to 
>>>> render
>>>> the links are you?
>>>>
>>>> I guess the xslt template is doing that.
>>>> In that case, you don't have a Struts Bridge problem but a general 
>>>> JSR-168 one.
>>>>
>>>> You *must* use RenderResponse.createRenderURL() or 
>>>> RenderResponse.createActionURL()
>>>> to be able to communicate back to the portlet...
>>>> The Struts Bridge tags does that under the covers (using 
>>>> StrutsPortletURL).
>>>>
>>>> If you are *not* using the Struts Bridge tags, you need to use the 
>>>> porlet api
>>>> (or the porlet tags) yourself.
>>>>
>>>> Good luck,
>>>>
>>>> Ate
>>>>
>>>>>
>>>>> Ate Douma wrote:
>>>>>
>>>>>> Satish,
>>>>>>
>>>>>> You don't give me much to go by for your problem.
>>>>>> But the logged path 
>>>>>> "/http://bluefin.cc.mun.ca:8080/cal/eventView" certainly
>>>>>> doesn't look valid (note the '/' in front of the http:// part).
>>>>>> Most likely you are not using the struts-bridge link (or 
>>>>>> resource) tag correctly.
>>>>>> Please provide a snippet from the jsp code and the related struts 
>>>>>> mapping.
>>>>>> Maybe then I'll be able to help you more.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>


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


Re: struts portlet

Posted by Satish Sekharan <sa...@mun.ca>.
As you suggested I started debugging the Struts Bridge rewrite tag

At line 102 after the Struts transform the tag to an url

url = bodyContent.getString();

The url variable is >>  http://bluefin.cc.mun.ca:8080/cal/initialise.rdo

Ate Douma wrote:

> Satish Sekharan wrote:
>
>> Inside header.jsp >>
>
> Ok. You didn't attach that one :-)
>
>>
>> <eventView><html:rewrite action="eventView.do"/></eventView>
>
> I'm puzzled how this could result in an 
> /http://bluefin.cc.mun.ca:8080/cal/eventView url.
> The Struts Bridge rewrite tag first lets the Struts tag itself 
> transform the tag to an url.
> That should lead to something like "/eventView".
> Then, the Struts Bridge will create an portlet url with a parameter 
> _spage=/eventView.
>
> So, where this is transformed to 
> _spage=/http://bluefin.cc.mun.ca.8080/cal/eventView I don't know for sure
> but I do suspect the xslt template.
>
> I noted that cal.xml contains
>       <urlprefix>
>         http://bluefin.cc.mun.ca:8080/cal
>       </urlprefix>
> Maybe that is injected somewhere by the template?
>
> If you can't find out quickly, I suggest debugging the Struts Bridge 
> rewrite tag. Put a break at line 114
> and you will be able to monitor the incoming url, the result from 
> Struts itself and the final result
> produced by the bridge.
>
>>
>> It is using the struts tags to create the links. This link is then 
>> included in the xml data and then it is used in the xslt tranformation.
>>
>> This is an example of a link that is created in the portlet using the 
>> struts bridge >>
>>
>> http://bluefin.cc.mun.ca:8080/uPortal/portlet-params@uP_portlet_action%253Dfalse%2526_spage%253D%252Fhttp%253A%252F%252Fbluefin%25252Ecc%25252Emun%25252Eca%253A8080%252Fcal%252FeventView%25252Edo@portlet-params.tag.d8f4b0a73dcc9f58.render.userLayoutRootNode.target.86.uP#8038586D11EC4AF81E0B20CE84F08347/86?eventId=1 
>>
>>
>> Ate Douma wrote:
>>
>>> Satish Sekharan wrote:
>>>
>>>> I just sent a email with some attachements. It just disappeared. I 
>>>> will send it again.
>>>
>>>
>>>
>>> Well, I've seen them already :-)
>>> As far as I can tell from this, you aren't using the Struts tags to 
>>> render
>>> the links are you?
>>>
>>> I guess the xslt template is doing that.
>>> In that case, you don't have a Struts Bridge problem but a general 
>>> JSR-168 one.
>>>
>>> You *must* use RenderResponse.createRenderURL() or 
>>> RenderResponse.createActionURL()
>>> to be able to communicate back to the portlet...
>>> The Struts Bridge tags does that under the covers (using 
>>> StrutsPortletURL).
>>>
>>> If you are *not* using the Struts Bridge tags, you need to use the 
>>> porlet api
>>> (or the porlet tags) yourself.
>>>
>>> Good luck,
>>>
>>> Ate
>>>
>>>>
>>>> Ate Douma wrote:
>>>>
>>>>> Satish,
>>>>>
>>>>> You don't give me much to go by for your problem.
>>>>> But the logged path "/http://bluefin.cc.mun.ca:8080/cal/eventView" 
>>>>> certainly
>>>>> doesn't look valid (note the '/' in front of the http:// part).
>>>>> Most likely you are not using the struts-bridge link (or resource) 
>>>>> tag correctly.
>>>>> Please provide a snippet from the jsp code and the related struts 
>>>>> mapping.
>>>>> Maybe then I'll be able to help you more.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
>>
>>
>>
>>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>


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


Re: struts portlet

Posted by Ate Douma <at...@douma.nu>.
Satish Sekharan wrote:
> Inside header.jsp >>
Ok. You didn't attach that one :-)

> 
> <eventView><html:rewrite action="eventView.do"/></eventView>
I'm puzzled how this could result in an /http://bluefin.cc.mun.ca:8080/cal/eventView url.
The Struts Bridge rewrite tag first lets the Struts tag itself transform the tag to an url.
That should lead to something like "/eventView".
Then, the Struts Bridge will create an portlet url with a parameter _spage=/eventView.

So, where this is transformed to _spage=/http://bluefin.cc.mun.ca.8080/cal/eventView I don't know for sure
but I do suspect the xslt template.

I noted that cal.xml contains
       <urlprefix>
         http://bluefin.cc.mun.ca:8080/cal
       </urlprefix>
Maybe that is injected somewhere by the template?

If you can't find out quickly, I suggest debugging the Struts Bridge rewrite tag. Put a break at line 114
and you will be able to monitor the incoming url, the result from Struts itself and the final result
produced by the bridge.

> 
> It is using the struts tags to create the links. This link is then 
> included in the xml data and then it is used in the xslt tranformation.
> 
> This is an example of a link that is created in the portlet using the 
> struts bridge >>
> 
> http://bluefin.cc.mun.ca:8080/uPortal/portlet-params@uP_portlet_action%253Dfalse%2526_spage%253D%252Fhttp%253A%252F%252Fbluefin%25252Ecc%25252Emun%25252Eca%253A8080%252Fcal%252FeventView%25252Edo@portlet-params.tag.d8f4b0a73dcc9f58.render.userLayoutRootNode.target.86.uP#8038586D11EC4AF81E0B20CE84F08347/86?eventId=1 
> 
> 
> Ate Douma wrote:
> 
>> Satish Sekharan wrote:
>>
>>> I just sent a email with some attachements. It just disappeared. I 
>>> will send it again.
>>
>>
>> Well, I've seen them already :-)
>> As far as I can tell from this, you aren't using the Struts tags to 
>> render
>> the links are you?
>>
>> I guess the xslt template is doing that.
>> In that case, you don't have a Struts Bridge problem but a general 
>> JSR-168 one.
>>
>> You *must* use RenderResponse.createRenderURL() or 
>> RenderResponse.createActionURL()
>> to be able to communicate back to the portlet...
>> The Struts Bridge tags does that under the covers (using 
>> StrutsPortletURL).
>>
>> If you are *not* using the Struts Bridge tags, you need to use the 
>> porlet api
>> (or the porlet tags) yourself.
>>
>> Good luck,
>>
>> Ate
>>
>>>
>>> Ate Douma wrote:
>>>
>>>> Satish,
>>>>
>>>> You don't give me much to go by for your problem.
>>>> But the logged path "/http://bluefin.cc.mun.ca:8080/cal/eventView" 
>>>> certainly
>>>> doesn't look valid (note the '/' in front of the http:// part).
>>>> Most likely you are not using the struts-bridge link (or resource) 
>>>> tag correctly.
>>>> Please provide a snippet from the jsp code and the related struts 
>>>> mapping.
>>>> Maybe then I'll be able to help you more.
>>>
>>>
>>>
>>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
> 
> 
> 
> 
> 



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


Re: struts portlet

Posted by Satish Sekharan <sa...@mun.ca>.
Inside header.jsp >>

<eventView><html:rewrite action="eventView.do"/></eventView>

It is using the struts tags to create the links. This link is then 
included in the xml data and then it is used in the xslt tranformation.

This is an example of a link that is created in the portlet using the 
struts bridge >>

http://bluefin.cc.mun.ca:8080/uPortal/portlet-params@uP_portlet_action%253Dfalse%2526_spage%253D%252Fhttp%253A%252F%252Fbluefin%25252Ecc%25252Emun%25252Eca%253A8080%252Fcal%252FeventView%25252Edo@portlet-params.tag.d8f4b0a73dcc9f58.render.userLayoutRootNode.target.86.uP#8038586D11EC4AF81E0B20CE84F08347/86?eventId=1

Ate Douma wrote:

> Satish Sekharan wrote:
>
>> I just sent a email with some attachements. It just disappeared. I 
>> will send it again.
>
> Well, I've seen them already :-)
> As far as I can tell from this, you aren't using the Struts tags to 
> render
> the links are you?
>
> I guess the xslt template is doing that.
> In that case, you don't have a Struts Bridge problem but a general 
> JSR-168 one.
>
> You *must* use RenderResponse.createRenderURL() or 
> RenderResponse.createActionURL()
> to be able to communicate back to the portlet...
> The Struts Bridge tags does that under the covers (using 
> StrutsPortletURL).
>
> If you are *not* using the Struts Bridge tags, you need to use the 
> porlet api
> (or the porlet tags) yourself.
>
> Good luck,
>
> Ate
>
>>
>> Ate Douma wrote:
>>
>>> Satish,
>>>
>>> You don't give me much to go by for your problem.
>>> But the logged path "/http://bluefin.cc.mun.ca:8080/cal/eventView" 
>>> certainly
>>> doesn't look valid (note the '/' in front of the http:// part).
>>> Most likely you are not using the struts-bridge link (or resource) 
>>> tag correctly.
>>> Please provide a snippet from the jsp code and the related struts 
>>> mapping.
>>> Maybe then I'll be able to help you more.
>>
>>
>>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>


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


Re: struts portlet

Posted by Ate Douma <at...@douma.nu>.
Satish Sekharan wrote:
> I just sent a email with some attachements. It just disappeared. I will 
> send it again.
Well, I've seen them already :-)
As far as I can tell from this, you aren't using the Struts tags to render
the links are you?

I guess the xslt template is doing that.
In that case, you don't have a Struts Bridge problem but a general JSR-168 one.

You *must* use RenderResponse.createRenderURL() or RenderResponse.createActionURL()
to be able to communicate back to the portlet...
The Struts Bridge tags does that under the covers (using StrutsPortletURL).

If you are *not* using the Struts Bridge tags, you need to use the porlet api
(or the porlet tags) yourself.

Good luck,

Ate

> 
> Ate Douma wrote:
> 
>> Satish,
>>
>> You don't give me much to go by for your problem.
>> But the logged path "/http://bluefin.cc.mun.ca:8080/cal/eventView" 
>> certainly
>> doesn't look valid (note the '/' in front of the http:// part).
>> Most likely you are not using the struts-bridge link (or resource) tag 
>> correctly.
>> Please provide a snippet from the jsp code and the related struts 
>> mapping.
>> Maybe then I'll be able to help you more.
>>
>> Satish Sekharan wrote:
>>
>>> Hi Ate,
>>>
>>> I am sending the message again to this newly created list.
>>>
>>> I am using the portal-struts-bridge to get a struts based UW Calendar 
>>> client to work with uPortal. I wrote a uPortal implementation for the 
>>> ServletContextProviderImpl interface with a wrapper for the response 
>>> object. This wrapper rewraps the response object and always calls 
>>> getOutputStream to write the response. This was needed because 
>>> uPortal calls getWriter and the calendar filter calls getOutputStream.
>>>
>>> Using the above, I got the calendar to render inside uPortal as a 
>>> portlet. But when I click any url generated inside the portlet the 
>>> window goes blank. I have double
>>> checked that I am using the correct struts-portlet-bridge taglib but 
>>> the portlet urls are still not generated correctly.
>>>
>>> This is the information from the log file >>
>>>
>>> 2005-07-12 09:31:59,734 DEBUG 
>>> [org.jasig.portal.container.PortletContainerImpl] 
>>> PortletContainerImpl.portletService(E25B1FB8CA6D78E507E0D9AFC3A60310/86) 
>>> called.
>>> 2005-07-12 09:32:00,165 ERROR 
>>> [org.apache.struts.action.RequestProcessor] Invalid path 
>>> /http://bluefin.cc.mun.ca:8080/cal/eventView was requested
>>> 2005-07-12 09:32:00,235 DEBUG [org.jasig.portal.ChannelRenderer] 
>>> ChannelRenderer.Worker::run() : recorded instance character cache 
>>> based on a key "INSTANCE_SCOPE_KEY"
>>> 2005-07-12 09:32:00,485 DEBUG [org.jasig.portal.UserInstance] 
>>> UserInstance::renderState() : recorded transformation character block 
>>> cache with key "2,userLayoutRootNode,system 
>>> 1current_structure=layoutfocusedTabID=83lastSessionTabID=no 
>>> lastSessionTabID 
>>> parametermode=viewnewNodeID=authenticated=trueuserName=Demo 
>>> Userskin=immIIauthorizedChannelPublisher=trueauthorizedFragmentPublisher=trueac033741-d4fa-4027-ffe6-†™ìB? 
>>> ?????"
>>>
>>> Any help would be appreciated.
>>>
>>> Thanks,
>>>
>>> Satish
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
> 
> 
> 
> 
> 



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


Re: struts portlet

Posted by Satish Sekharan <sa...@mun.ca>.
I just sent a email with some attachements. It just disappeared. I will 
send it again.

Ate Douma wrote:

> Satish,
>
> You don't give me much to go by for your problem.
> But the logged path "/http://bluefin.cc.mun.ca:8080/cal/eventView" 
> certainly
> doesn't look valid (note the '/' in front of the http:// part).
> Most likely you are not using the struts-bridge link (or resource) tag 
> correctly.
> Please provide a snippet from the jsp code and the related struts 
> mapping.
> Maybe then I'll be able to help you more.
>
> Satish Sekharan wrote:
>
>> Hi Ate,
>>
>> I am sending the message again to this newly created list.
>>
>> I am using the portal-struts-bridge to get a struts based UW Calendar 
>> client to work with uPortal. I wrote a uPortal implementation for the 
>> ServletContextProviderImpl interface with a wrapper for the response 
>> object. This wrapper rewraps the response object and always calls 
>> getOutputStream to write the response. This was needed because 
>> uPortal calls getWriter and the calendar filter calls getOutputStream.
>>
>> Using the above, I got the calendar to render inside uPortal as a 
>> portlet. But when I click any url generated inside the portlet the 
>> window goes blank. I have double
>> checked that I am using the correct struts-portlet-bridge taglib but 
>> the portlet urls are still not generated correctly.
>>
>> This is the information from the log file >>
>>
>> 2005-07-12 09:31:59,734 DEBUG 
>> [org.jasig.portal.container.PortletContainerImpl] 
>> PortletContainerImpl.portletService(E25B1FB8CA6D78E507E0D9AFC3A60310/86) 
>> called.
>> 2005-07-12 09:32:00,165 ERROR 
>> [org.apache.struts.action.RequestProcessor] Invalid path 
>> /http://bluefin.cc.mun.ca:8080/cal/eventView was requested
>> 2005-07-12 09:32:00,235 DEBUG [org.jasig.portal.ChannelRenderer] 
>> ChannelRenderer.Worker::run() : recorded instance character cache 
>> based on a key "INSTANCE_SCOPE_KEY"
>> 2005-07-12 09:32:00,485 DEBUG [org.jasig.portal.UserInstance] 
>> UserInstance::renderState() : recorded transformation character block 
>> cache with key "2,userLayoutRootNode,system 
>> 1current_structure=layoutfocusedTabID=83lastSessionTabID=no 
>> lastSessionTabID 
>> parametermode=viewnewNodeID=authenticated=trueuserName=Demo 
>> Userskin=immIIauthorizedChannelPublisher=trueauthorizedFragmentPublisher=trueac033741-d4fa-4027-ffe6-†™ìB? 
>> ?????"
>>
>> Any help would be appreciated.
>>
>> Thanks,
>>
>> Satish
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
>>
>>
>>
>>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>


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


Re: struts portlet

Posted by Satish Sekharan <sa...@mun.ca>.
Yes! this project is a very cool indeed. I never thought I could just 
get the struts based apps working as portlets inside uPortal without 
writing any code. Also as Jason said this is the most portable solution 
that avoids vendor lock-in.

Great work Ate :)

P.S. Jason, I will package the calendar app including the DB with tables 
for you to test it out.

Jason Novotny wrote:

>
>    Cool-- I appreciate your work in this area! Developing standards 
> compliant briodges that we as portal vendors can use will greatly 
> enhance all of our projects as well as give people confidence in 
> developing solutions that avoid vendor lock-in-- kep up the great work 
> :-)
>
>    Cheers, Jason
>
> Ate Douma wrote:
>
>> Hi Jason,
>>
>> Funny, I was just looking at your mail about it :-)
>>
>> I think you we're right in that it is not standards-compliant and I'm 
>> thinking
>> of a different solution. I don't think it will be difficult to do.
>> I come back on that as soon as possible.
>>
>> Regards,
>>
>> Ate
>>
>> Jason Novotny wrote:
>>
>>>
>>>    Hi Ate,
>>>
>>>    Welcome back from your vacation and glad you started the bridges 
>>> mail lists-- did you ever get a chance to check out the mail 
>>> exchange between me and Stefan Hepper, JSR 168 co-author? I'm 
>>> concerned that the approach may not be standards-compliant... did 
>>> that make any sense to you?
>>>
>>>    Thanks, Jason
>>>
>>> Ate Douma wrote:
>>>
>>>> Satish,
>>>>
>>>> You don't give me much to go by for your problem.
>>>> But the logged path "/http://bluefin.cc.mun.ca:8080/cal/eventView" 
>>>> certainly
>>>> doesn't look valid (note the '/' in front of the http:// part).
>>>> Most likely you are not using the struts-bridge link (or resource) 
>>>> tag correctly.
>>>> Please provide a snippet from the jsp code and the related struts 
>>>> mapping.
>>>> Maybe then I'll be able to help you more.
>>>>
>>>> Satish Sekharan wrote:
>>>>
>>>>> Hi Ate,
>>>>>
>>>>> I am sending the message again to this newly created list.
>>>>>
>>>>> I am using the portal-struts-bridge to get a struts based UW 
>>>>> Calendar client to work with uPortal. I wrote a uPortal 
>>>>> implementation for the ServletContextProviderImpl interface with a 
>>>>> wrapper for the response object. This wrapper rewraps the response 
>>>>> object and always calls getOutputStream to write the response. 
>>>>> This was needed because uPortal calls getWriter and the calendar 
>>>>> filter calls getOutputStream.
>>>>>
>>>>> Using the above, I got the calendar to render inside uPortal as a 
>>>>> portlet. But when I click any url generated inside the portlet the 
>>>>> window goes blank. I have double
>>>>> checked that I am using the correct struts-portlet-bridge taglib 
>>>>> but the portlet urls are still not generated correctly.
>>>>>
>>>>> This is the information from the log file >>
>>>>>
>>>>> 2005-07-12 09:31:59,734 DEBUG 
>>>>> [org.jasig.portal.container.PortletContainerImpl] 
>>>>> PortletContainerImpl.portletService(E25B1FB8CA6D78E507E0D9AFC3A60310/86) 
>>>>> called.
>>>>> 2005-07-12 09:32:00,165 ERROR 
>>>>> [org.apache.struts.action.RequestProcessor] Invalid path 
>>>>> /http://bluefin.cc.mun.ca:8080/cal/eventView was requested
>>>>> 2005-07-12 09:32:00,235 DEBUG [org.jasig.portal.ChannelRenderer] 
>>>>> ChannelRenderer.Worker::run() : recorded instance character cache 
>>>>> based on a key "INSTANCE_SCOPE_KEY"
>>>>> 2005-07-12 09:32:00,485 DEBUG [org.jasig.portal.UserInstance] 
>>>>> UserInstance::renderState() : recorded transformation character 
>>>>> block cache with key "2,userLayoutRootNode,system 
>>>>> 1current_structure=layoutfocusedTabID=83lastSessionTabID=no 
>>>>> lastSessionTabID 
>>>>> parametermode=viewnewNodeID=authenticated=trueuserName=Demo 
>>>>> Userskin=immIIauthorizedChannelPublisher=trueauthorizedFragmentPublisher=trueac033741-d4fa-4027-ffe6-†™ìB? 
>>>>> ?????"
>>>>>
>>>>> Any help would be appreciated.
>>>>>
>>>>> Thanks,
>>>>>
>>>>> Satish
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>


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


Re: struts portlet

Posted by Ate Douma <at...@douma.nu>.
Jason Novotny wrote:
> 
>    Yes, sorry for not responsing sooner myself, but looks like we have 
> agreement on Plan B :-) Ate,  please let us know when the code is 
> updated and  a new release can be made.
I opened an JIRA issue for this:
   http://issues.apache.org/jira/browse/PB-2
And I also committed the proposed fix.

Jason, could you checkout and build a new struts bridge from svn trunk,
see if it now works in GridSphere (without the need to extend your portlet container)
and let us know your findings.
Please provide comment on the above issue directly.

Regards,

Ate

> 
>    Thanks, Jason
> 
> Ate Douma wrote:
> 
>> Stefan Hepper wrote:
>>
>>>
>>> Ate Douma <at...@douma.nu> wrote on 29/07/2005 16:05:20:
>>>
>>>
>>>> Jason Novotny wrote:
>>>>
>>>>>   Cool-- I appreciate your work in this area! Developing standards
>>>>> compliant briodges that we as portal vendors can use will greatly
>>>>> enhance all of our projects as well as give people confidence in
>>>>> developing solutions that avoid vendor lock-in-- kep up the great work
>>>>
>>>>
>>>
>>> :-)
>>>
>>>> Thanks :-)
>>>>
>>>> I'm inlining your original question here so others will understand what
>>>
>>>
>>>
>>> this
>>>
>>>> is all about. And also cc'ing Stefan and jsr-168-comments as I'd
>>>> like to provide
>>>> a solution that is acceptable (as much as possible) to all.
>>>>
>>>
>>>
>>> Thanks for including me on this thread.
>>
>>
>> Thanks for responding :-)
>>
>>>
>>>
>>>> Jason Novotny wrote:
>>>> >
>>>> > Hi Ate,
>>>> >
>>>> >    Great work on the struts portlet brige! I'm trying to heist the
>>>
>>>
>>>
>>> code
>>>
>>>> > and get it working in GridSphere. I just used the struts-demo and it
>>>
>>>
>>>
>>> all
>>>
>>>> > worked fine with the right tweaks in web.xml and using our
>>>> > PortletServlet driver. Not too sure how that app really works ;-) but
>>>> > navigation and form handling seem to work fine. One issue I had 
>>>> though
>>>> > where I had to change my code is make sure to add the
>>>> > "javax.portlet.request" attribute in the request since some the 
>>>> bridge
>>>> > code uses a check like:
>>>> >
>>>> > public static boolean isPortletRequest(ServletRequest request)
>>>> >    {
>>>> >        return request.getAttribute("javax.portlet.request") != null;
>>>> >    }
>>>> >
>>>> > But it seems according to the spec. that it shouldn't need to be set
>>>> > before performing an action method, since the RenderRequest which
>>>> > represents "javax.portlet.request" PLT 16.3.2 would only be 
>>>> accessible
>>>> > when a servlet is included as part of a render request... but I can't
>>>> > really come up with any other way that would indicate that it's a
>>>> > portlet request.
>>>> >
>>>> >    Cheers, Jason
>>>> >
>>>> >
>>>>
>>>> I gave this problem some more thought.
>>>>
>>>> Its true that the portlet api doesn't specify anything about setting
>>>> the javax.portlet.* attributes during ActionRequest handling.
>>>>
>>>
>>>
>>> It would also not make sense, because the spec states that the 
>>> request is
>>> the render request that is included.
>>>
>>>
>>>> But then, the spec doesn't (formally) support Servlet inclusion from
>>>> an ActionRequest
>>>> either (which is a *big* omission in my opinion).
>>>>
>>>
>>>
>>> It was discussed, but there was no consensus at that time to include 
>>> this
>>> in the spec. Something we may bring up for V2.0 again.
>>
>>
>> That indeed would be nice. Any info when that might be? ;-)
>>
>>>
>>>
>>>> So, using the Struts Bridge (or more specific: the Portals Bridges
>>>> Common ServletContextProvider interface)
>>>> is already not fully in compliance with JSR-168. But then, I don't
>>>> think its in violation either.
>>>> It just requires access to the underlying Servlet context.
>>>> But *not* that a Portlet request extends the Servlet request as
>>>> Stefan Hepper thought.
>>>>
>>>
>>>
>>> good to hear, but still it will be vendor specifc how you get the 
>>> servlet
>>> context and thus for each portal there would need to be an 
>>> implementation
>>> on how to access the servlet context.
>>
>>
>> True.
>> That's why I created one simple interface: ServletContextProvider which
>> indeed need to be implemented by (or for) a specific Portal.
>> But then, that's the only thing required. The Struts Bridge (and other 
>> bridges
>> using this as well) have no further dependency on a specific Portal.
>>
>>>
>>>
>>>
>>>> Now, I see two ways to solve this problem:
>>>> a) use a different request attribute to test against, like
>>>> StrutsPortlet.REQUEST_TYPE
>>>> b) actually set this attribute (and the others) from StrutsPortlet.
>>>> processRequest before
>>>>   including the StrutsServlet when handling an ActionRequest.
>>>>
>>>> Solution a) is quick and simple to do as this request attribute
>>>> already is set when the StrutsServlet
>>>> is invoked from StrutsPortlet.
>>>>
>>>> Solution b) might be more generic though.
>>>> This way, Portals are not required to set these attributes (won't
>>>> harm either, Jetspeed-2 itself *does* set these).
>>>> And, the Struts application has an easy and *transparent* access to
>>>> the PortletRequest/Response/Config
>>>> components, even during ActionRequest handling. These attributes
>>>> then are guaranteed to exist when using the Struts
>>>> Bridge, independent of the underlying Portal.
>>>> This might be an "extension" of the portlet specs, but I don't think
>>>> it is a violation.
>>>> I certainly would like to see something like this (and the
>>>> ServletContextProvider)
>>>> supported in an upcoming spec update :-)
>>>>
>>>> Clearly I prefer solution b). What do you think?
>>>>
>>>
>>>
>>> I agree that B would be the solution that does not make any assumptions
>>> beyond the portlet spec about the calling portal.
>>
>>
>> Neither does option A, but good you don't see any problem going for B :-)
>> Thanks again.
>>
>> Regards, Ate
>>
>>>
>>>
>>>
>>>
>>> Regards,
>>>     Stefan
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
> 
> 
> 
> 
> 



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


Re: struts portlet

Posted by Jason Novotny <no...@aei.mpg.de>.
    Yes, sorry for not responsing sooner myself, but looks like we have 
agreement on Plan B :-) Ate,  please let us know when the code is 
updated and  a new release can be made.

    Thanks, Jason

Ate Douma wrote:

> Stefan Hepper wrote:
>
>>
>> Ate Douma <at...@douma.nu> wrote on 29/07/2005 16:05:20:
>>
>>
>>> Jason Novotny wrote:
>>>
>>>>   Cool-- I appreciate your work in this area! Developing standards
>>>> compliant briodges that we as portal vendors can use will greatly
>>>> enhance all of our projects as well as give people confidence in
>>>> developing solutions that avoid vendor lock-in-- kep up the great work
>>>
>>
>> :-)
>>
>>> Thanks :-)
>>>
>>> I'm inlining your original question here so others will understand what
>>
>>
>> this
>>
>>> is all about. And also cc'ing Stefan and jsr-168-comments as I'd
>>> like to provide
>>> a solution that is acceptable (as much as possible) to all.
>>>
>>
>>
>> Thanks for including me on this thread.
>
> Thanks for responding :-)
>
>>
>>
>>> Jason Novotny wrote:
>>> >
>>> > Hi Ate,
>>> >
>>> >    Great work on the struts portlet brige! I'm trying to heist the
>>
>>
>> code
>>
>>> > and get it working in GridSphere. I just used the struts-demo and it
>>
>>
>> all
>>
>>> > worked fine with the right tweaks in web.xml and using our
>>> > PortletServlet driver. Not too sure how that app really works ;-) but
>>> > navigation and form handling seem to work fine. One issue I had 
>>> though
>>> > where I had to change my code is make sure to add the
>>> > "javax.portlet.request" attribute in the request since some the 
>>> bridge
>>> > code uses a check like:
>>> >
>>> > public static boolean isPortletRequest(ServletRequest request)
>>> >    {
>>> >        return request.getAttribute("javax.portlet.request") != null;
>>> >    }
>>> >
>>> > But it seems according to the spec. that it shouldn't need to be set
>>> > before performing an action method, since the RenderRequest which
>>> > represents "javax.portlet.request" PLT 16.3.2 would only be 
>>> accessible
>>> > when a servlet is included as part of a render request... but I can't
>>> > really come up with any other way that would indicate that it's a
>>> > portlet request.
>>> >
>>> >    Cheers, Jason
>>> >
>>> >
>>>
>>> I gave this problem some more thought.
>>>
>>> Its true that the portlet api doesn't specify anything about setting
>>> the javax.portlet.* attributes during ActionRequest handling.
>>>
>>
>>
>> It would also not make sense, because the spec states that the 
>> request is
>> the render request that is included.
>>
>>
>>> But then, the spec doesn't (formally) support Servlet inclusion from
>>> an ActionRequest
>>> either (which is a *big* omission in my opinion).
>>>
>>
>>
>> It was discussed, but there was no consensus at that time to include 
>> this
>> in the spec. Something we may bring up for V2.0 again.
>
> That indeed would be nice. Any info when that might be? ;-)
>
>>
>>
>>> So, using the Struts Bridge (or more specific: the Portals Bridges
>>> Common ServletContextProvider interface)
>>> is already not fully in compliance with JSR-168. But then, I don't
>>> think its in violation either.
>>> It just requires access to the underlying Servlet context.
>>> But *not* that a Portlet request extends the Servlet request as
>>> Stefan Hepper thought.
>>>
>>
>>
>> good to hear, but still it will be vendor specifc how you get the 
>> servlet
>> context and thus for each portal there would need to be an 
>> implementation
>> on how to access the servlet context.
>
> True.
> That's why I created one simple interface: ServletContextProvider which
> indeed need to be implemented by (or for) a specific Portal.
> But then, that's the only thing required. The Struts Bridge (and other 
> bridges
> using this as well) have no further dependency on a specific Portal.
>
>>
>>
>>
>>> Now, I see two ways to solve this problem:
>>> a) use a different request attribute to test against, like
>>> StrutsPortlet.REQUEST_TYPE
>>> b) actually set this attribute (and the others) from StrutsPortlet.
>>> processRequest before
>>>   including the StrutsServlet when handling an ActionRequest.
>>>
>>> Solution a) is quick and simple to do as this request attribute
>>> already is set when the StrutsServlet
>>> is invoked from StrutsPortlet.
>>>
>>> Solution b) might be more generic though.
>>> This way, Portals are not required to set these attributes (won't
>>> harm either, Jetspeed-2 itself *does* set these).
>>> And, the Struts application has an easy and *transparent* access to
>>> the PortletRequest/Response/Config
>>> components, even during ActionRequest handling. These attributes
>>> then are guaranteed to exist when using the Struts
>>> Bridge, independent of the underlying Portal.
>>> This might be an "extension" of the portlet specs, but I don't think
>>> it is a violation.
>>> I certainly would like to see something like this (and the
>>> ServletContextProvider)
>>> supported in an upcoming spec update :-)
>>>
>>> Clearly I prefer solution b). What do you think?
>>>
>>
>>
>> I agree that B would be the solution that does not make any assumptions
>> beyond the portlet spec about the calling portal.
>
> Neither does option A, but good you don't see any problem going for B :-)
> Thanks again.
>
> Regards, Ate
>
>>
>>
>>
>>
>> Regards,
>>     Stefan
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
>>
>>
>>
>>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>


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


Re: struts portlet

Posted by Ate Douma <at...@douma.nu>.
Stefan Hepper wrote:
> 
> Ate Douma <at...@douma.nu> wrote on 29/07/2005 16:05:20:
> 
> 
>>Jason Novotny wrote:
>>
>>>   Cool-- I appreciate your work in this area! Developing standards
>>>compliant briodges that we as portal vendors can use will greatly
>>>enhance all of our projects as well as give people confidence in
>>>developing solutions that avoid vendor lock-in-- kep up the great work
> 
> :-)
> 
>>Thanks :-)
>>
>>I'm inlining your original question here so others will understand what
> 
> this
> 
>>is all about. And also cc'ing Stefan and jsr-168-comments as I'd
>>like to provide
>>a solution that is acceptable (as much as possible) to all.
>>
> 
> 
> Thanks for including me on this thread.
Thanks for responding :-)

> 
> 
>>Jason Novotny wrote:
>> >
>> > Hi Ate,
>> >
>> >    Great work on the struts portlet brige! I'm trying to heist the
> 
> code
> 
>> > and get it working in GridSphere. I just used the struts-demo and it
> 
> all
> 
>> > worked fine with the right tweaks in web.xml and using our
>> > PortletServlet driver. Not too sure how that app really works ;-) but
>> > navigation and form handling seem to work fine. One issue I had though
>> > where I had to change my code is make sure to add the
>> > "javax.portlet.request" attribute in the request since some the bridge
>> > code uses a check like:
>> >
>> > public static boolean isPortletRequest(ServletRequest request)
>> >    {
>> >        return request.getAttribute("javax.portlet.request") != null;
>> >    }
>> >
>> > But it seems according to the spec. that it shouldn't need to be set
>> > before performing an action method, since the RenderRequest which
>> > represents "javax.portlet.request" PLT 16.3.2 would only be accessible
>> > when a servlet is included as part of a render request... but I can't
>> > really come up with any other way that would indicate that it's a
>> > portlet request.
>> >
>> >    Cheers, Jason
>> >
>> >
>>
>>I gave this problem some more thought.
>>
>>Its true that the portlet api doesn't specify anything about setting
>>the javax.portlet.* attributes during ActionRequest handling.
>>
> 
> 
> It would also not make sense, because the spec states that the request is
> the render request that is included.
> 
> 
>>But then, the spec doesn't (formally) support Servlet inclusion from
>>an ActionRequest
>>either (which is a *big* omission in my opinion).
>>
> 
> 
> It was discussed, but there was no consensus at that time to include this
> in the spec. Something we may bring up for V2.0 again.
That indeed would be nice. Any info when that might be? ;-)

> 
> 
>>So, using the Struts Bridge (or more specific: the Portals Bridges
>>Common ServletContextProvider interface)
>>is already not fully in compliance with JSR-168. But then, I don't
>>think its in violation either.
>>It just requires access to the underlying Servlet context.
>>But *not* that a Portlet request extends the Servlet request as
>>Stefan Hepper thought.
>>
> 
> 
> good to hear, but still it will be vendor specifc how you get the servlet
> context and thus for each portal there would need to be an implementation
> on how to access the servlet context.
True.
That's why I created one simple interface: ServletContextProvider which
indeed need to be implemented by (or for) a specific Portal.
But then, that's the only thing required. The Struts Bridge (and other bridges
using this as well) have no further dependency on a specific Portal.

> 
> 
> 
>>Now, I see two ways to solve this problem:
>>a) use a different request attribute to test against, like
>>StrutsPortlet.REQUEST_TYPE
>>b) actually set this attribute (and the others) from StrutsPortlet.
>>processRequest before
>>   including the StrutsServlet when handling an ActionRequest.
>>
>>Solution a) is quick and simple to do as this request attribute
>>already is set when the StrutsServlet
>>is invoked from StrutsPortlet.
>>
>>Solution b) might be more generic though.
>>This way, Portals are not required to set these attributes (won't
>>harm either, Jetspeed-2 itself *does* set these).
>>And, the Struts application has an easy and *transparent* access to
>>the PortletRequest/Response/Config
>>components, even during ActionRequest handling. These attributes
>>then are guaranteed to exist when using the Struts
>>Bridge, independent of the underlying Portal.
>>This might be an "extension" of the portlet specs, but I don't think
>>it is a violation.
>>I certainly would like to see something like this (and the
>>ServletContextProvider)
>>supported in an upcoming spec update :-)
>>
>>Clearly I prefer solution b). What do you think?
>>
> 
> 
> I agree that B would be the solution that does not make any assumptions
> beyond the portlet spec about the calling portal.
Neither does option A, but good you don't see any problem going for B :-)
Thanks again.

Regards, Ate

> 
> 
> 
> 
> Regards,
>     Stefan
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
> 
> 
> 
> 
> 



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


Re: struts portlet

Posted by Stefan Hepper <ST...@de.ibm.com>.

Ate Douma <at...@douma.nu> wrote on 29/07/2005 16:05:20:

> Jason Novotny wrote:
> >
> >    Cool-- I appreciate your work in this area! Developing standards
> > compliant briodges that we as portal vendors can use will greatly
> > enhance all of our projects as well as give people confidence in
> > developing solutions that avoid vendor lock-in-- kep up the great work
:-)
> Thanks :-)
>
> I'm inlining your original question here so others will understand what
this
> is all about. And also cc'ing Stefan and jsr-168-comments as I'd
> like to provide
> a solution that is acceptable (as much as possible) to all.
>

Thanks for including me on this thread.

> Jason Novotny wrote:
>  >
>  > Hi Ate,
>  >
>  >    Great work on the struts portlet brige! I'm trying to heist the
code
>  > and get it working in GridSphere. I just used the struts-demo and it
all
>  > worked fine with the right tweaks in web.xml and using our
>  > PortletServlet driver. Not too sure how that app really works ;-) but
>  > navigation and form handling seem to work fine. One issue I had though
>  > where I had to change my code is make sure to add the
>  > "javax.portlet.request" attribute in the request since some the bridge
>  > code uses a check like:
>  >
>  > public static boolean isPortletRequest(ServletRequest request)
>  >    {
>  >        return request.getAttribute("javax.portlet.request") != null;
>  >    }
>  >
>  > But it seems according to the spec. that it shouldn't need to be set
>  > before performing an action method, since the RenderRequest which
>  > represents "javax.portlet.request" PLT 16.3.2 would only be accessible
>  > when a servlet is included as part of a render request... but I can't
>  > really come up with any other way that would indicate that it's a
>  > portlet request.
>  >
>  >    Cheers, Jason
>  >
>  >
>
> I gave this problem some more thought.
>
> Its true that the portlet api doesn't specify anything about setting
> the javax.portlet.* attributes during ActionRequest handling.
>

It would also not make sense, because the spec states that the request is
the render request that is included.

> But then, the spec doesn't (formally) support Servlet inclusion from
> an ActionRequest
> either (which is a *big* omission in my opinion).
>

It was discussed, but there was no consensus at that time to include this
in the spec. Something we may bring up for V2.0 again.

> So, using the Struts Bridge (or more specific: the Portals Bridges
> Common ServletContextProvider interface)
> is already not fully in compliance with JSR-168. But then, I don't
> think its in violation either.
> It just requires access to the underlying Servlet context.
> But *not* that a Portlet request extends the Servlet request as
> Stefan Hepper thought.
>

good to hear, but still it will be vendor specifc how you get the servlet
context and thus for each portal there would need to be an implementation
on how to access the servlet context.


> Now, I see two ways to solve this problem:
> a) use a different request attribute to test against, like
> StrutsPortlet.REQUEST_TYPE
> b) actually set this attribute (and the others) from StrutsPortlet.
> processRequest before
>    including the StrutsServlet when handling an ActionRequest.
>
> Solution a) is quick and simple to do as this request attribute
> already is set when the StrutsServlet
> is invoked from StrutsPortlet.
>
> Solution b) might be more generic though.
> This way, Portals are not required to set these attributes (won't
> harm either, Jetspeed-2 itself *does* set these).
> And, the Struts application has an easy and *transparent* access to
> the PortletRequest/Response/Config
> components, even during ActionRequest handling. These attributes
> then are guaranteed to exist when using the Struts
> Bridge, independent of the underlying Portal.
> This might be an "extension" of the portlet specs, but I don't think
> it is a violation.
> I certainly would like to see something like this (and the
> ServletContextProvider)
> supported in an upcoming spec update :-)
>
> Clearly I prefer solution b). What do you think?
>

I agree that B would be the solution that does not make any assumptions
beyond the portlet spec about the calling portal.




Regards,
    Stefan



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


Re: struts portlet

Posted by Ate Douma <at...@douma.nu>.
Jason Novotny wrote:
> 
>    Cool-- I appreciate your work in this area! Developing standards 
> compliant briodges that we as portal vendors can use will greatly 
> enhance all of our projects as well as give people confidence in 
> developing solutions that avoid vendor lock-in-- kep up the great work :-)
Thanks :-)

I'm inlining your original question here so others will understand what this
is all about. And also cc'ing Stefan and jsr-168-comments as I'd like to provide
a solution that is acceptable (as much as possible) to all.

Jason Novotny wrote:
 >
 > Hi Ate,
 >
 >    Great work on the struts portlet brige! I'm trying to heist the code
 > and get it working in GridSphere. I just used the struts-demo and it all
 > worked fine with the right tweaks in web.xml and using our
 > PortletServlet driver. Not too sure how that app really works ;-) but
 > navigation and form handling seem to work fine. One issue I had though
 > where I had to change my code is make sure to add the
 > "javax.portlet.request" attribute in the request since some the bridge
 > code uses a check like:
 >
 > public static boolean isPortletRequest(ServletRequest request)
 >    {
 >        return request.getAttribute("javax.portlet.request") != null;
 >    }
 >
 > But it seems according to the spec. that it shouldn't need to be set
 > before performing an action method, since the RenderRequest which
 > represents "javax.portlet.request" PLT 16.3.2 would only be accessible
 > when a servlet is included as part of a render request... but I can't
 > really come up with any other way that would indicate that it's a
 > portlet request.
 >
 >    Cheers, Jason
 >
 >

I gave this problem some more thought.

Its true that the portlet api doesn't specify anything about setting
the javax.portlet.* attributes during ActionRequest handling.

But then, the spec doesn't (formally) support Servlet inclusion from an ActionRequest
either (which is a *big* omission in my opinion).

So, using the Struts Bridge (or more specific: the Portals Bridges Common ServletContextProvider interface)
is already not fully in compliance with JSR-168. But then, I don't think its in violation either.
It just requires access to the underlying Servlet context.
But *not* that a Portlet request extends the Servlet request as Stefan Hepper thought.

Now, I see two ways to solve this problem:
a) use a different request attribute to test against, like StrutsPortlet.REQUEST_TYPE
b) actually set this attribute (and the others) from StrutsPortlet.processRequest before
   including the StrutsServlet when handling an ActionRequest.

Solution a) is quick and simple to do as this request attribute already is set when the StrutsServlet
is invoked from StrutsPortlet.

Solution b) might be more generic though.
This way, Portals are not required to set these attributes (won't harm either, Jetspeed-2 itself *does* set these).
And, the Struts application has an easy and *transparent* access to the PortletRequest/Response/Config
components, even during ActionRequest handling. These attributes then are guaranteed to exist when using the Struts 
Bridge, independent of the underlying Portal.
This might be an "extension" of the portlet specs, but I don't think it is a violation.
I certainly would like to see something like this (and the ServletContextProvider)
supported in an upcoming spec update :-)

Clearly I prefer solution b). What do you think?

> 
>    Cheers, Jason
> 
> Ate Douma wrote:
> 
>> Hi Jason,
>>
>> Funny, I was just looking at your mail about it :-)
>>
>> I think you we're right in that it is not standards-compliant and I'm 
>> thinking
>> of a different solution. I don't think it will be difficult to do.
>> I come back on that as soon as possible.
>>
>> Regards,
>>
>> Ate
>>
>> Jason Novotny wrote:
>>
>>>
>>>    Hi Ate,
>>>
>>>    Welcome back from your vacation and glad you started the bridges 
>>> mail lists-- did you ever get a chance to check out the mail exchange 
>>> between me and Stefan Hepper, JSR 168 co-author? I'm concerned that 
>>> the approach may not be standards-compliant... did that make any 
>>> sense to you?
>>>
>>>    Thanks, Jason
>>>


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


Re: struts portlet

Posted by Jason Novotny <no...@aei.mpg.de>.
    Cool-- I appreciate your work in this area! Developing standards 
compliant briodges that we as portal vendors can use will greatly 
enhance all of our projects as well as give people confidence in 
developing solutions that avoid vendor lock-in-- kep up the great work :-)

    Cheers, Jason

Ate Douma wrote:

> Hi Jason,
>
> Funny, I was just looking at your mail about it :-)
>
> I think you we're right in that it is not standards-compliant and I'm 
> thinking
> of a different solution. I don't think it will be difficult to do.
> I come back on that as soon as possible.
>
> Regards,
>
> Ate
>
> Jason Novotny wrote:
>
>>
>>    Hi Ate,
>>
>>    Welcome back from your vacation and glad you started the bridges 
>> mail lists-- did you ever get a chance to check out the mail exchange 
>> between me and Stefan Hepper, JSR 168 co-author? I'm concerned that 
>> the approach may not be standards-compliant... did that make any 
>> sense to you?
>>
>>    Thanks, Jason
>>
>> Ate Douma wrote:
>>
>>> Satish,
>>>
>>> You don't give me much to go by for your problem.
>>> But the logged path "/http://bluefin.cc.mun.ca:8080/cal/eventView" 
>>> certainly
>>> doesn't look valid (note the '/' in front of the http:// part).
>>> Most likely you are not using the struts-bridge link (or resource) 
>>> tag correctly.
>>> Please provide a snippet from the jsp code and the related struts 
>>> mapping.
>>> Maybe then I'll be able to help you more.
>>>
>>> Satish Sekharan wrote:
>>>
>>>> Hi Ate,
>>>>
>>>> I am sending the message again to this newly created list.
>>>>
>>>> I am using the portal-struts-bridge to get a struts based UW 
>>>> Calendar client to work with uPortal. I wrote a uPortal 
>>>> implementation for the ServletContextProviderImpl interface with a 
>>>> wrapper for the response object. This wrapper rewraps the response 
>>>> object and always calls getOutputStream to write the response. This 
>>>> was needed because uPortal calls getWriter and the calendar filter 
>>>> calls getOutputStream.
>>>>
>>>> Using the above, I got the calendar to render inside uPortal as a 
>>>> portlet. But when I click any url generated inside the portlet the 
>>>> window goes blank. I have double
>>>> checked that I am using the correct struts-portlet-bridge taglib 
>>>> but the portlet urls are still not generated correctly.
>>>>
>>>> This is the information from the log file >>
>>>>
>>>> 2005-07-12 09:31:59,734 DEBUG 
>>>> [org.jasig.portal.container.PortletContainerImpl] 
>>>> PortletContainerImpl.portletService(E25B1FB8CA6D78E507E0D9AFC3A60310/86) 
>>>> called.
>>>> 2005-07-12 09:32:00,165 ERROR 
>>>> [org.apache.struts.action.RequestProcessor] Invalid path 
>>>> /http://bluefin.cc.mun.ca:8080/cal/eventView was requested
>>>> 2005-07-12 09:32:00,235 DEBUG [org.jasig.portal.ChannelRenderer] 
>>>> ChannelRenderer.Worker::run() : recorded instance character cache 
>>>> based on a key "INSTANCE_SCOPE_KEY"
>>>> 2005-07-12 09:32:00,485 DEBUG [org.jasig.portal.UserInstance] 
>>>> UserInstance::renderState() : recorded transformation character 
>>>> block cache with key "2,userLayoutRootNode,system 
>>>> 1current_structure=layoutfocusedTabID=83lastSessionTabID=no 
>>>> lastSessionTabID 
>>>> parametermode=viewnewNodeID=authenticated=trueuserName=Demo 
>>>> Userskin=immIIauthorizedChannelPublisher=trueauthorizedFragmentPublisher=trueac033741-d4fa-4027-ffe6-†™ìB? 
>>>> ?????"
>>>>
>>>> Any help would be appreciated.
>>>>
>>>> Thanks,
>>>>
>>>> Satish
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
>>
>>
>>
>>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>


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


Re: struts portlet

Posted by Ate Douma <at...@douma.nu>.
Hi Jason,

Funny, I was just looking at your mail about it :-)

I think you we're right in that it is not standards-compliant and I'm thinking
of a different solution. I don't think it will be difficult to do.
I come back on that as soon as possible.

Regards,

Ate

Jason Novotny wrote:
> 
>    Hi Ate,
> 
>    Welcome back from your vacation and glad you started the bridges mail 
> lists-- did you ever get a chance to check out the mail exchange between 
> me and Stefan Hepper, JSR 168 co-author? I'm concerned that the approach 
> may not be standards-compliant... did that make any sense to you?
> 
>    Thanks, Jason
> 
> Ate Douma wrote:
> 
>> Satish,
>>
>> You don't give me much to go by for your problem.
>> But the logged path "/http://bluefin.cc.mun.ca:8080/cal/eventView" 
>> certainly
>> doesn't look valid (note the '/' in front of the http:// part).
>> Most likely you are not using the struts-bridge link (or resource) tag 
>> correctly.
>> Please provide a snippet from the jsp code and the related struts 
>> mapping.
>> Maybe then I'll be able to help you more.
>>
>> Satish Sekharan wrote:
>>
>>> Hi Ate,
>>>
>>> I am sending the message again to this newly created list.
>>>
>>> I am using the portal-struts-bridge to get a struts based UW Calendar 
>>> client to work with uPortal. I wrote a uPortal implementation for the 
>>> ServletContextProviderImpl interface with a wrapper for the response 
>>> object. This wrapper rewraps the response object and always calls 
>>> getOutputStream to write the response. This was needed because 
>>> uPortal calls getWriter and the calendar filter calls getOutputStream.
>>>
>>> Using the above, I got the calendar to render inside uPortal as a 
>>> portlet. But when I click any url generated inside the portlet the 
>>> window goes blank. I have double
>>> checked that I am using the correct struts-portlet-bridge taglib but 
>>> the portlet urls are still not generated correctly.
>>>
>>> This is the information from the log file >>
>>>
>>> 2005-07-12 09:31:59,734 DEBUG 
>>> [org.jasig.portal.container.PortletContainerImpl] 
>>> PortletContainerImpl.portletService(E25B1FB8CA6D78E507E0D9AFC3A60310/86) 
>>> called.
>>> 2005-07-12 09:32:00,165 ERROR 
>>> [org.apache.struts.action.RequestProcessor] Invalid path 
>>> /http://bluefin.cc.mun.ca:8080/cal/eventView was requested
>>> 2005-07-12 09:32:00,235 DEBUG [org.jasig.portal.ChannelRenderer] 
>>> ChannelRenderer.Worker::run() : recorded instance character cache 
>>> based on a key "INSTANCE_SCOPE_KEY"
>>> 2005-07-12 09:32:00,485 DEBUG [org.jasig.portal.UserInstance] 
>>> UserInstance::renderState() : recorded transformation character block 
>>> cache with key "2,userLayoutRootNode,system 
>>> 1current_structure=layoutfocusedTabID=83lastSessionTabID=no 
>>> lastSessionTabID 
>>> parametermode=viewnewNodeID=authenticated=trueuserName=Demo 
>>> Userskin=immIIauthorizedChannelPublisher=trueauthorizedFragmentPublisher=trueac033741-d4fa-4027-ffe6-†™ìB? 
>>> ?????"
>>>
>>> Any help would be appreciated.
>>>
>>> Thanks,
>>>
>>> Satish
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
> 
> 
> 
> 
> 



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


Re: struts portlet

Posted by Jason Novotny <no...@aei.mpg.de>.
    Hi Satish,

    I haven't had much time to try that since the installation process 
of the calendar is still so painful :-( I'm hoping Mike gets the 
Hibernate refactorings working so I can simply run "ant create-database" 
and just configure my hibernate.properties file. However, if you gave me 
a WAR that included whatever is necessary including DB with tables 
created I could test it out. I've at least been successful getting the 
portals bridge code integrated into GridSphere :-)

    Cheers, Jason

Satish Sekharan wrote:

> Hi Jason,
>
> How are you geting along with the calendar portlet in gridsphere portal.
>
> Jason Novotny wrote:
>
>>
>>    Hi Ate,
>>
>>    Welcome back from your vacation and glad you started the bridges 
>> mail lists-- did you ever get a chance to check out the mail exchange 
>> between me and Stefan Hepper, JSR 168 co-author? I'm concerned that 
>> the approach may not be standards-compliant... did that make any 
>> sense to you?
>>
>>    Thanks, Jason
>>
>> Ate Douma wrote:
>>
>>> Satish,
>>>
>>> You don't give me much to go by for your problem.
>>> But the logged path "/http://bluefin.cc.mun.ca:8080/cal/eventView" 
>>> certainly
>>> doesn't look valid (note the '/' in front of the http:// part).
>>> Most likely you are not using the struts-bridge link (or resource) 
>>> tag correctly.
>>> Please provide a snippet from the jsp code and the related struts 
>>> mapping.
>>> Maybe then I'll be able to help you more.
>>>
>>> Satish Sekharan wrote:
>>>
>>>> Hi Ate,
>>>>
>>>> I am sending the message again to this newly created list.
>>>>
>>>> I am using the portal-struts-bridge to get a struts based UW 
>>>> Calendar client to work with uPortal. I wrote a uPortal 
>>>> implementation for the ServletContextProviderImpl interface with a 
>>>> wrapper for the response object. This wrapper rewraps the response 
>>>> object and always calls getOutputStream to write the response. This 
>>>> was needed because uPortal calls getWriter and the calendar filter 
>>>> calls getOutputStream.
>>>>
>>>> Using the above, I got the calendar to render inside uPortal as a 
>>>> portlet. But when I click any url generated inside the portlet the 
>>>> window goes blank. I have double
>>>> checked that I am using the correct struts-portlet-bridge taglib 
>>>> but the portlet urls are still not generated correctly.
>>>>
>>>> This is the information from the log file >>
>>>>
>>>> 2005-07-12 09:31:59,734 DEBUG 
>>>> [org.jasig.portal.container.PortletContainerImpl] 
>>>> PortletContainerImpl.portletService(E25B1FB8CA6D78E507E0D9AFC3A60310/86) 
>>>> called.
>>>> 2005-07-12 09:32:00,165 ERROR 
>>>> [org.apache.struts.action.RequestProcessor] Invalid path 
>>>> /http://bluefin.cc.mun.ca:8080/cal/eventView was requested
>>>> 2005-07-12 09:32:00,235 DEBUG [org.jasig.portal.ChannelRenderer] 
>>>> ChannelRenderer.Worker::run() : recorded instance character cache 
>>>> based on a key "INSTANCE_SCOPE_KEY"
>>>> 2005-07-12 09:32:00,485 DEBUG [org.jasig.portal.UserInstance] 
>>>> UserInstance::renderState() : recorded transformation character 
>>>> block cache with key "2,userLayoutRootNode,system 
>>>> 1current_structure=layoutfocusedTabID=83lastSessionTabID=no 
>>>> lastSessionTabID 
>>>> parametermode=viewnewNodeID=authenticated=trueuserName=Demo 
>>>> Userskin=immIIauthorizedChannelPublisher=trueauthorizedFragmentPublisher=trueac033741-d4fa-4027-ffe6-†™ìB? 
>>>> ?????"
>>>>
>>>> Any help would be appreciated.
>>>>
>>>> Thanks,
>>>>
>>>> Satish
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>


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


Re: struts portlet

Posted by Satish Sekharan <sa...@mun.ca>.
Hi Jason,

How are you geting along with the calendar portlet in gridsphere portal.

Jason Novotny wrote:

>
>    Hi Ate,
>
>    Welcome back from your vacation and glad you started the bridges 
> mail lists-- did you ever get a chance to check out the mail exchange 
> between me and Stefan Hepper, JSR 168 co-author? I'm concerned that 
> the approach may not be standards-compliant... did that make any sense 
> to you?
>
>    Thanks, Jason
>
> Ate Douma wrote:
>
>> Satish,
>>
>> You don't give me much to go by for your problem.
>> But the logged path "/http://bluefin.cc.mun.ca:8080/cal/eventView" 
>> certainly
>> doesn't look valid (note the '/' in front of the http:// part).
>> Most likely you are not using the struts-bridge link (or resource) 
>> tag correctly.
>> Please provide a snippet from the jsp code and the related struts 
>> mapping.
>> Maybe then I'll be able to help you more.
>>
>> Satish Sekharan wrote:
>>
>>> Hi Ate,
>>>
>>> I am sending the message again to this newly created list.
>>>
>>> I am using the portal-struts-bridge to get a struts based UW 
>>> Calendar client to work with uPortal. I wrote a uPortal 
>>> implementation for the ServletContextProviderImpl interface with a 
>>> wrapper for the response object. This wrapper rewraps the response 
>>> object and always calls getOutputStream to write the response. This 
>>> was needed because uPortal calls getWriter and the calendar filter 
>>> calls getOutputStream.
>>>
>>> Using the above, I got the calendar to render inside uPortal as a 
>>> portlet. But when I click any url generated inside the portlet the 
>>> window goes blank. I have double
>>> checked that I am using the correct struts-portlet-bridge taglib but 
>>> the portlet urls are still not generated correctly.
>>>
>>> This is the information from the log file >>
>>>
>>> 2005-07-12 09:31:59,734 DEBUG 
>>> [org.jasig.portal.container.PortletContainerImpl] 
>>> PortletContainerImpl.portletService(E25B1FB8CA6D78E507E0D9AFC3A60310/86) 
>>> called.
>>> 2005-07-12 09:32:00,165 ERROR 
>>> [org.apache.struts.action.RequestProcessor] Invalid path 
>>> /http://bluefin.cc.mun.ca:8080/cal/eventView was requested
>>> 2005-07-12 09:32:00,235 DEBUG [org.jasig.portal.ChannelRenderer] 
>>> ChannelRenderer.Worker::run() : recorded instance character cache 
>>> based on a key "INSTANCE_SCOPE_KEY"
>>> 2005-07-12 09:32:00,485 DEBUG [org.jasig.portal.UserInstance] 
>>> UserInstance::renderState() : recorded transformation character 
>>> block cache with key "2,userLayoutRootNode,system 
>>> 1current_structure=layoutfocusedTabID=83lastSessionTabID=no 
>>> lastSessionTabID 
>>> parametermode=viewnewNodeID=authenticated=trueuserName=Demo 
>>> Userskin=immIIauthorizedChannelPublisher=trueauthorizedFragmentPublisher=trueac033741-d4fa-4027-ffe6-†™ìB? 
>>> ?????"
>>>
>>> Any help would be appreciated.
>>>
>>> Thanks,
>>>
>>> Satish
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>


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


Re: struts portlet

Posted by Jason Novotny <no...@aei.mpg.de>.
    Hi Ate,

    Welcome back from your vacation and glad you started the bridges 
mail lists-- did you ever get a chance to check out the mail exchange 
between me and Stefan Hepper, JSR 168 co-author? I'm concerned that the 
approach may not be standards-compliant... did that make any sense to you?

    Thanks, Jason

Ate Douma wrote:

> Satish,
>
> You don't give me much to go by for your problem.
> But the logged path "/http://bluefin.cc.mun.ca:8080/cal/eventView" 
> certainly
> doesn't look valid (note the '/' in front of the http:// part).
> Most likely you are not using the struts-bridge link (or resource) tag 
> correctly.
> Please provide a snippet from the jsp code and the related struts 
> mapping.
> Maybe then I'll be able to help you more.
>
> Satish Sekharan wrote:
>
>> Hi Ate,
>>
>> I am sending the message again to this newly created list.
>>
>> I am using the portal-struts-bridge to get a struts based UW Calendar 
>> client to work with uPortal. I wrote a uPortal implementation for the 
>> ServletContextProviderImpl interface with a wrapper for the response 
>> object. This wrapper rewraps the response object and always calls 
>> getOutputStream to write the response. This was needed because 
>> uPortal calls getWriter and the calendar filter calls getOutputStream.
>>
>> Using the above, I got the calendar to render inside uPortal as a 
>> portlet. But when I click any url generated inside the portlet the 
>> window goes blank. I have double
>> checked that I am using the correct struts-portlet-bridge taglib but 
>> the portlet urls are still not generated correctly.
>>
>> This is the information from the log file >>
>>
>> 2005-07-12 09:31:59,734 DEBUG 
>> [org.jasig.portal.container.PortletContainerImpl] 
>> PortletContainerImpl.portletService(E25B1FB8CA6D78E507E0D9AFC3A60310/86) 
>> called.
>> 2005-07-12 09:32:00,165 ERROR 
>> [org.apache.struts.action.RequestProcessor] Invalid path 
>> /http://bluefin.cc.mun.ca:8080/cal/eventView was requested
>> 2005-07-12 09:32:00,235 DEBUG [org.jasig.portal.ChannelRenderer] 
>> ChannelRenderer.Worker::run() : recorded instance character cache 
>> based on a key "INSTANCE_SCOPE_KEY"
>> 2005-07-12 09:32:00,485 DEBUG [org.jasig.portal.UserInstance] 
>> UserInstance::renderState() : recorded transformation character block 
>> cache with key "2,userLayoutRootNode,system 
>> 1current_structure=layoutfocusedTabID=83lastSessionTabID=no 
>> lastSessionTabID 
>> parametermode=viewnewNodeID=authenticated=trueuserName=Demo 
>> Userskin=immIIauthorizedChannelPublisher=trueauthorizedFragmentPublisher=trueac033741-d4fa-4027-ffe6-†™ìB? 
>> ?????"
>>
>> Any help would be appreciated.
>>
>> Thanks,
>>
>> Satish
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
>> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>>
>>
>>
>>
>>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
>


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


Re: struts portlet

Posted by Ate Douma <at...@douma.nu>.
Satish,

You don't give me much to go by for your problem.
But the logged path "/http://bluefin.cc.mun.ca:8080/cal/eventView" certainly
doesn't look valid (note the '/' in front of the http:// part).
Most likely you are not using the struts-bridge link (or resource) tag correctly.
Please provide a snippet from the jsp code and the related struts mapping.
Maybe then I'll be able to help you more.

Satish Sekharan wrote:
> Hi Ate,
> 
> I am sending the message again to this newly created list.
> 
> I am using the portal-struts-bridge to get a struts based UW Calendar 
> client to work with uPortal. I wrote a uPortal implementation for the 
> ServletContextProviderImpl interface with a wrapper for the response 
> object. This wrapper rewraps the response object and always calls 
> getOutputStream to write the response. This was needed because uPortal 
> calls getWriter and the calendar filter calls getOutputStream.
> 
> Using the above, I got the calendar to render inside uPortal as a 
> portlet. But when I click any url generated inside the portlet the 
> window goes blank. I have double
> checked that I am using the correct struts-portlet-bridge taglib but the 
> portlet urls are still not generated correctly.
> 
> This is the information from the log file >>
> 
> 2005-07-12 09:31:59,734 DEBUG 
> [org.jasig.portal.container.PortletContainerImpl] 
> PortletContainerImpl.portletService(E25B1FB8CA6D78E507E0D9AFC3A60310/86) 
> called.
> 2005-07-12 09:32:00,165 ERROR 
> [org.apache.struts.action.RequestProcessor] Invalid path 
> /http://bluefin.cc.mun.ca:8080/cal/eventView was requested
> 2005-07-12 09:32:00,235 DEBUG [org.jasig.portal.ChannelRenderer] 
> ChannelRenderer.Worker::run() : recorded instance character cache based 
> on a key "INSTANCE_SCOPE_KEY"
> 2005-07-12 09:32:00,485 DEBUG [org.jasig.portal.UserInstance] 
> UserInstance::renderState() : recorded transformation character block 
> cache with key "2,userLayoutRootNode,system 
> 1current_structure=layoutfocusedTabID=83lastSessionTabID=no 
> lastSessionTabID 
> parametermode=viewnewNodeID=authenticated=trueuserName=Demo 
> Userskin=immIIauthorizedChannelPublisher=trueauthorizedFragmentPublisher=trueac033741-d4fa-4027-ffe6-†™ìB? 
> ?????"
> 
> Any help would be appreciated.
> 
> Thanks,
> 
> Satish
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: bridges-dev-help@portals.apache.org
> 
> 
> 
> 
> 



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