The header.jsp creates the calendar xml data which includes the action
urls. This is then transformed to html using xslt stylesheets.
The "cal.xml" contains the raw xml data created by the jsp files before
transformation.
I am including all the approriate files.
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<?xml version="1.0" encoding="UTF-8"?>
<config>
<render-context>
<attribute name="errors"/>
<attribute name="message"/>
</render-context>
<portlet-url-type>
<render path="/show"/>
<action path="/setup"/>
<action path="/selectFilter"/>
<action path="/showCals"/>
<action path="/setView"/>
<action path="/eventView"/>
<action path="/addEvent"/>
<action path="/editEvent"/>
<action path="/addEventRef"/>
<action path="/delEventRef"/>
<action path="/showPage"/>
<action path="/manageLocations"/>
<action path="/addLocation"/>
<action path="/editLocation"/>
<action path="/delLocation"/>
<action path="/subscribe"/>
</portlet-url-type>
</config>
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
"http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd">
<!-- ====================================================================
This is a the Struts configuration for the uwcal client.
====================================================================== -->
<struts-config>
<!-- ========== Form Bean Definitions =================================== -->
<form-beans>
<form-bean name="calForm"
type="edu.rpi.cct.uwcal.webclient.UWCalActionForm"/>
</form-beans>
<!-- ========== Global Forward Definitions ============================== -->
<global-forwards>
<!-- render forwards -->
<forward name="initialise" path="/initialise.rdo"/>
<forward name="showCals" path="/showCals.rdo"/>
<forward name="showManageLocations" path="/showManageLocations.rdo"/>
<forward name="showEditLocation" path="/showEditLocation.rdo"/>
<forward name="showEditEvent" path="/showEditEvent.rdo"/>
<forward name="eventMore" path="/showEventMore.rdo"/>
<forward name="initial" path="/setup.do"/>
<forward name="doNothing" path="/showMain.rdo" redirect="true" />
<forward name="error" path="/showMain.rdo" redirect="true" />
<forward name="success" path="/showMain.rdo" redirect="true" />
<forward name="cancelled" path="/showMain.rdo" redirect="true" />
</global-forwards>
<!-- ========== Action Mapping Definitions ============================== -->
<action-mappings>
<!-- ===============================================================
Render actions - these should be referenced by the rdo suffix to
invoke the xslt filter
=============================================================== -->
<!--
<action path="/showMain"
name="calForm"
scope="session"
validate="false"
include="/docs/main.jsp"/>
-->
<action path="/showMain"
type="edu.rpi.cct.uwcal.webclient.UWCalRenderAction"
name="calForm"
scope="session"
validate="false">
<forward name="success" path="/docs/main.jsp"/>
</action>
<action path="/showCals"
type="edu.rpi.cct.uwcal.webclient.UWCalRenderAction"
name="calForm"
scope="session"
validate="false">
<forward name="success" path="/docs/calendars.jsp" />
</action>
<action path="/showEventMore"
type="edu.rpi.cct.uwcal.webclient.UWCalRenderAction"
name="calForm"
scope="session"
validate="false">
<forward name="success" path="/docs/eventMore.jsp" />
</action>
<action path="/showAddEvent"
type="edu.rpi.cct.uwcal.webclient.UWCalRenderAction"
name="calForm"
scope="session"
validate="false">
<forward name="success" path="/docs/addEvent.jsp" />
</action>
<action path="/showEditEvent"
type="edu.rpi.cct.uwcal.webclient.UWCalRenderAction"
name="calForm"
scope="session"
validate="false">
<forward name="success" path="/docs/editEvent.jsp" />
</action>
<action path="/showEditLocation"
type="edu.rpi.cct.uwcal.webclient.UWCalRenderAction"
name="calForm"
scope="session"
validate="false">
<forward name="success" path="/docs/editLocation.jsp" />
</action>
<action path="/showManageLocations"
type="edu.rpi.cct.uwcal.webclient.UWCalRenderAction"
name="calForm"
scope="session"
validate="false">
<forward name="success" path="/docs/manageLocations.jsp" />
</action>
<action path="/showEmailOptions"
type="edu.rpi.cct.uwcal.webclient.UWCalRenderAction"
name="calForm"
scope="session"
validate="false">
<forward name="success" path="/docs/emailOptions.jsp" />
</action>
<action path="/showAlarmOptions"
type="edu.rpi.cct.uwcal.webclient.UWCalRenderAction"
name="calForm"
scope="session"
validate="false">
<forward name="success" path="/docs/alarmOptions.jsp" />
</action>
<action path="/initialise"
type="edu.rpi.cct.uwcal.webclient.UWCalRenderAction"
name="calForm"
scope="session"
validate="false">
<forward name="success" path="/docs/main.jsp" />
<forward name="loggedOut" path="/docs/login/logout.html" />
</action>
<!-- ===============================================================
These actions do not render - these should be referenced by the do
suffix and should redirect to a render action.
=============================================================== -->
<action path="/setup"
type="edu.rpi.cct.uwcal.webclient.UWCalAction"
name="calForm"
scope="session"
validate="false">
<forward name="loggedOut" path="/docs/login/logout.html" />
</action>
<action path="/selectFilter"
type="edu.rpi.cct.uwcal.webclient.UWCalFilterAction"
name="calForm"
scope="session"
validate="false">
<forward name="noCalDef" path="/showMain.rdo" redirect="true" />
</action>
<action path="/setView"
type="edu.rpi.cct.uwcal.webclient.UWCalGoToAction"
name="calForm"
scope="session"
validate="false">
<forward name="noCalDef" path="/showMain.rdo" redirect="true" />
</action>
<action path="/eventView"
type="edu.rpi.cct.uwcal.webclient.UWCalEventAction"
name="calForm"
scope="session"
validate="false">
<forward name="success" path="/showEventMore.rdo" redirect="true" />
</action>
<!-- The following action is used for adding events from a form on the main
personal calandar page (a la Washington); on error or success, we return to the
main.jsp page. -->
<action path="/addEvent"
type="edu.rpi.cct.uwcal.webclient.UWCalAddEventAction"
name="calForm"
scope="session"
validate="false">
</action>
<!-- The following 2 actions are used for adding events from an "add event" page
(a la Demo, Rensselaer); on error, we return to the
addEvent.jsp page. -->
<action path="/initEvent"
type="edu.rpi.cct.uwcal.webclient.UWCalAction"
name="calForm"
scope="session"
validate="false">
<forward name="success" path="/showAddEvent.rdo" redirect="true" />
</action>
<action path="/addEventUsingPage"
type="edu.rpi.cct.uwcal.webclient.UWCalAddEventAction"
name="calForm"
scope="session"
validate="false">
<forward name="error" path="/showAddEvent.rdo" redirect="true" />
<forward name="doNothing" path="/showAddEvent.rdo" redirect="true" />
</action>
<action path="/editEvent"
type="edu.rpi.cct.uwcal.webclient.UWCalEditEventAction"
name="calForm"
scope="session"
validate="false">
<forward name="edit" path="/showEditEvent.rdo" redirect="true" />
</action>
<action path="/delEvent"
type="edu.rpi.cct.uwcal.webclient.UWCalDelEventAction"
name="calForm"
scope="session"
validate="false">
</action>
<action path="/addEventRef"
type="edu.rpi.cct.uwcal.webclient.UWCalAddEventRefAction"
name="calForm"
scope="session"
validate="false">
</action>
<action path="/delEventRef"
type="edu.rpi.cct.uwcal.webclient.UWCalDelEventRefAction"
name="calForm"
scope="session"
validate="false">
</action>
<action path="/showPage"
type="edu.rpi.cct.uwcal.webclient.UWCalAction"
name="calForm"
scope="session"
validate="false">
<forward name="success" path="/docs/showPage.jsp" />
</action>
<action path="/manageLocations"
type="edu.rpi.cct.uwcal.webclient.UWCalAction"
name="calForm"
scope="session"
validate="false">
<forward name="success" path="/showManageLocations.rdo" redirect="true" />
</action>
<action path="/addLocation"
type="edu.rpi.cct.uwcal.webclient.UWCalAddLocationAction"
name="calForm"
scope="session"
validate="false">
<forward name="success" path="/showManageLocations.rdo" redirect="true" />
</action>
<action path="/editLoc"
type="edu.rpi.cct.uwcal.webclient.UWCalEditLocationAction"
name="calForm"
scope="session"
validate="false">
<forward name="edit" path="/showEditLocation.rdo" redirect="true" />
<forward name="success" path="/showManageLocations.rdo" redirect="true" />
</action>
<action path="/delLocation"
type="edu.rpi.cct.uwcal.webclient.UWCalDelLocationAction"
name="calForm"
scope="session"
validate="false">
<forward name="referenced" path="/showManageLocations.rdo" redirect="true" />
<forward name="success" path="/showManageLocations.rdo" redirect="true" />
</action>
<!-- ....................... mailing events ........................ -->
<action path="/initMailEvent"
type="edu.rpi.cct.uwcal.webclient.UWCalFetchEventAction"
name="calForm"
scope="session"
validate="false">
<forward name="notFound" path="/showMain.rdo" redirect="true" />
<forward name="success" path="/showEmailOptions.rdo" redirect="true" />
</action>
<action path="/mailEvent"
type="edu.rpi.cct.uwcal.webclient.UWCalMailEventAction"
name="calForm"
scope="session"
validate="false">
<forward name="noEvent" path="/showMain.rdo" redirect="true" />
<forward name="retry" path="/showEmailOptions.rdo" redirect="true" />
<forward name="success" path="/showMain.rdo" redirect="true" />
</action>
<!-- ....................... event alarms .......................... -->
<action path="/initEventAlarm"
type="edu.rpi.cct.uwcal.webclient.UWCalFetchEventAction"
name="calForm"
scope="session"
validate="false">
<forward name="notFound" path="/showMain.rdo" redirect="true" />
<forward name="success" path="/showAlarmOptions.rdo" redirect="true" />
</action>
<action path="/setAlarm"
type="edu.rpi.cct.uwcal.webclient.UWCalSetAlarmAction"
name="calForm"
scope="session"
validate="false">
<forward name="noEvent" path="/showMain.rdo" redirect="true" />
<forward name="retry" path="/showAlarmOptions.rdo" redirect="true" />
<forward name="success" path="/showMain.rdo" redirect="true" />
</action>
<!-- ..................... subscriptionss .......................... -->
<action path="/subscribe"
type="edu.rpi.cct.uwcal.webclient.UWCalSubscribeAction"
name="calForm"
scope="session"
validate="false">
</action>
</action-mappings>
<!-- unknown="true" -->
<!-- Below will be one or more comments which must not be edited or removed
for the portlet build process to succeed. The comment will be replaced
by some extra cofiguration.
-->
<!-- ========== Controller Configuration ================================ -->
<controller pagePattern="$M$P" inputForward="true" processorClass="org.apache.portals.bridges.struts.PortletRequestProcessor"/>
<message-resources parameter="client" null="true" />
</struts-config>
<!DOCTYPE ucalendar
[
<!ENTITY nbsp " ">
]>
<ucalendar>
<now>
<date>
20050729
</date>
<longdate>
July 29, 2005
</longdate>
<shortdate>
7/29/05
</shortdate>
<time>
9:50 AM
</time>
</now>
<currentdate>
<date>
20050729
</date>
<longdate>
Friday, July 29, 2005
</longdate>
<shortdate>
7/29/05
</shortdate>
<monthname>
July
</monthname>
</currentdate>
<firstday>
<date>
20050724
</date>
<longdate>
Sunday, July 24, 2005
</longdate>
<shortdate>
7/24/05
</shortdate>
<monthname>
July
</monthname>
</firstday>
<lastday>
<date>
20050730
</date>
<longdate>
Saturday, July 30, 2005
</longdate>
<shortdate>
7/30/05
</shortdate>
<monthname>
July
</monthname>
</lastday>
<previousdate>
20050722
</previousdate>
<nextdate>
20050805
</nextdate>
<periodname>
Week
</periodname>
<multiday>
true
</multiday>
<hour24>
true
</hour24>
<title></title>
<calid></calid>
<search></search>
<publicview>
true
</publicview>
<guest>
true
</guest>
<approot>
http://bluefin.cc.mun.ca:8080/calrsrc
</approot>
<urlprefix>
http://bluefin.cc.mun.ca:8080/cal
</urlprefix>
<urlpattern>
/cal/DUMMYACTION.do
</urlpattern>
<personaluri>
/ucal
</personaluri>
<publicuri>
/cal
</publicuri>
<adminuri>
/caladmin
</adminuri>
<urlPrefixes>
<initialise>
/cal/initialise.rdo
</initialise>
<showCals>
/cal/showCals.rdo
</showCals>
<eventMore>
/cal/showEventMore.rdo
</eventMore>
<setup>
/cal/setup.do
</setup>
<selectFilter>
/cal/selectFilter.do
</selectFilter>
<setView>
/cal/setView.do
</setView>
<eventView>
/cal/eventView.do
</eventView>
<initEvent>
/cal/initEvent.do
</initEvent>
<addEvent>
/cal/addEvent.do
</addEvent>
<addEventUsingPage>
/cal/addEventUsingPage.do
</addEventUsingPage>
<editEvent>
/cal/editEvent.do
</editEvent>
<delEvent>
/cal/delEvent.do
</delEvent>
<delEventRef>
/cal/delEventRef.do
</delEventRef>
<mailEvent>
/cal/mailEvent.do
</mailEvent>
<showPage>
/cal/showPage.do
</showPage>
<manageLocations>
/cal/manageLocations.do
</manageLocations>
<addLocation>
/cal/addLocation.do
</addLocation>
<editLocation>
/cal/editLoc.do
</editLocation>
<delLocation>
/cal/delLocation.do
</delLocation>
<subscribe>
/cal/subscribe.do
</subscribe>
<initEventAlarm>
/cal/initEventAlarm.do
</initEventAlarm>
<setAlarm>
/cal/setAlarm.do
</setAlarm>
<addEventRef>
/cal/addEventRef.do
</addEventRef>
</urlPrefixes>
<confirmationid>
JWPWVWIXBLXD3DRQ0
</confirmationid>
<page>
eventscalendar
</page>
<eventscalendar>
<year>
<value>
2005
</value>
<month>
<value>
07
</value>
<longname>
July
</longname>
<shortname>
July
</shortname>
<week>
<value>
1
</value>
<day>
<filler>
false
</filler>
<value>
24
</value>
<name>
Sunday
</name>
<date>
20050724
</date>
<longdate>
July 24, 2005
</longdate>
<shortdate>
7/24/05
</shortdate>
</day>
</week>
</month>
</year>
</eventscalendar>
</ucalendar>
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<display-name>UWCal public client</display-name>
<context-param>
<param-name>rpiappname</param-name>
<param-value>DemoCal</param-value>
</context-param>
<context-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</context-param>
<filter>
<filter-name>XSLT Filter</filter-name>
<filter-class>edu.rpi.sss.util.servlets.ConfiguredXSLTFilter</filter-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>directoryBrowsingDisallowed</param-name>
<param-value>no</param-value>
</init-param>
<init-param>
<param-name>ignoreContentType</param-name>
<param-value>false</param-value>
</init-param>
</filter>
<filter>
<filter-name>SvcI Filter</filter-name>
<filter-class>edu.rpi.cct.uwcal.webcommon.UWCalSvciFilter</filter-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
</filter>
<filter>
<filter-name>Session Filter</filter-name>
<filter-class>edu.rpi.sss.util.servlets.SessionFilter</filter-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>attributePrefix</param-name>
<param-value>org.uwcal.portlet.DemoCal</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Session Filter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>INCLUDE</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
<filter-mapping>
<filter-name>SvcI Filter</filter-name>
<url-pattern>*.do</url-pattern>
<dispatcher>INCLUDE</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
<filter-mapping>
<filter-name>SvcI Filter</filter-name>
<url-pattern>*.rdo</url-pattern>
<dispatcher>INCLUDE</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
<filter-mapping>
<filter-name>XSLT Filter</filter-name>
<url-pattern>*.rdo</url-pattern>
<dispatcher>INCLUDE</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
<listener>
<listener-class>edu.rpi.sss.util.jsp.SessionListener</listener-class>
</listener>
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.portals.bridges.struts.PortletServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>PublicCal</servlet-name>
<display-name>PublicCal Wrapper</display-name>
<description>Automated generated Portlet Wrapper</description>
<servlet-class>org.apache.pluto.core.PortletServlet</servlet-class>
<init-param>
<param-name>portlet-class</param-name>
<param-value>org.apache.portals.bridges.struts.StrutsPortlet</param-value>
</init-param>
<init-param>
<param-name>portlet-guid</param-name>
<param-value>cal.PublicCal</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.rdo</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>PublicCal</servlet-name>
<url-pattern>/PublicCal/*</url-pattern>
</servlet-mapping>
<session-config/>
<welcome-file-list>
<welcome-file>docs/index.html</welcome-file>
</welcome-file-list>
<taglib>
<taglib-uri>http://java.sun.com/portlet</taglib-uri>
<taglib-location>/WEB-INF/tld/portlet.tld</taglib-location>
</taglib>
<resource-ref>
<description>The calendar DS</description>
<res-ref-name>jdbc/calDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]