[Bedework-commit] r594 - in trunk/calendar3: . bldfiles lib
lib/portals-bridges-1.0 uportal uportal/src uportal/src/ca
uportal/src/ca/mun uportal/src/ca/mun/portal
uportal/src/ca/mun/portal/strutsbridge
uportal/src/ca/mun/portal/strutsbridge/taglib
svnadmin at bedework.org
svnadmin at bedework.org
Sun Jun 18 20:39:44 EDT 2006
Author: douglm
Date: 2006-06-18 20:38:14 -0400 (Sun, 18 Jun 2006)
New Revision: 594
Added:
trunk/calendar3/lib/pluto-1.0.1-rc2.jar
trunk/calendar3/lib/portals-bridges-1.0/
trunk/calendar3/lib/portals-bridges-1.0/portals-bridges-common-1.0.jar
trunk/calendar3/lib/portals-bridges-1.0/portals-bridges-struts-1.2.7-1.0.jar
trunk/calendar3/lib/portals-bridges-1.0/struts-portlet.tld
trunk/calendar3/lib/portlet-api-1.0.jar
trunk/calendar3/lib/xalan-2-6-0.jar
trunk/calendar3/uportal/
trunk/calendar3/uportal/build.xml
trunk/calendar3/uportal/src/
trunk/calendar3/uportal/src/ca/
trunk/calendar3/uportal/src/ca/mun/
trunk/calendar3/uportal/src/ca/mun/portal/
trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/
trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/PortalServletContextProvider.java
trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/PortletResponseWrapper.java
trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/taglib/
trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/taglib/CalRewriteTag.java
trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/taglib/TagsSupport.java
Modified:
trunk/calendar3/bldfiles/defjars.properties
trunk/calendar3/bldfiles/globalDefs.xml
trunk/calendar3/build.xml
Log:
Upgrade xalan to 2.6.0
Add portal-bridges-struts to lib
Copy into there portal-bridges-struts-1.2.7.jar portal-bridges-common-1.0.jar
Also copy struts-1.2.7-portlet-1.0.tld as struts-portlet.tld
Add pluto and portlet-api.jar to lib, define in defjars as...
portlet.jar=${org.bedework.default.lib}/portlet-api-1.0.jar
pluto.jar=${org.bedework.default.lib}/pluto-1.0.1-rc2.jar
Add uportaldb target to quickstart/build.xml
Copy quickstart build.xml into calendar3/bldfiles.
Import it into new quickstart build file stripped of all content.
Ensures we always commit build.xml changes.
Also created new README in docs - added an ant README target.
Pointed at both in quickstart README
Delete quickstartfiles/root
Add uportal component to calendar3. Add mun source and other stuff.
Change bldfiles/globalDefs.xml to define it
Change calendar3/build.xml to build it
Change mun rewrite tag to remove ?be=d from url
Modified: trunk/calendar3/bldfiles/defjars.properties
===================================================================
--- trunk/calendar3/bldfiles/defjars.properties 2006-06-16 16:01:43 UTC (rev 593)
+++ trunk/calendar3/bldfiles/defjars.properties 2006-06-19 00:38:14 UTC (rev 594)
@@ -12,6 +12,17 @@
servlet.jsp.jar=${org.bedework.default.lib}/servlet.jsp.jar
+portlet.jar=${org.bedework.default.lib}/portlet-api-1.0.jar
+
+pluto.jar=${org.bedework.default.lib}/pluto-1.0.1-rc2.jar
+
+portals-bridges.jars.dir.name=portals-bridges-1.0
+portals-bridges.jars.dir=${org.bedework.default.lib}/${portals-bridges.jars.dir.name}
+
+portals-bridges-common.jar=${portals-bridges.jars.dir}/portals-bridges-common-1.0.jar
+
+portals-bridges-struts.jar=${portals-bridges.jars.dir}/portals-bridges-struts-1.2.7-1.0.jar
+
ant.jar=${org.bedework.default.lib}/ant-1.6.5.jar
p6spy.jar=${org.bedework.default.lib}/p6spy-1.3.jar
@@ -107,7 +118,7 @@
webdavlib.jar.name=webdavlib.jar
webdavlib.jar=${org.bedework.default.lib}/${webdavlib.jar.name}
-xalan.jar=${org.bedework.default.lib}/xalan.jar
+xalan.jar=${org.bedework.default.lib}/xalan-2-6-0.jar
# jetspeed2 jars
jetspeed2.jars.dir=jetspeed2-m3
@@ -173,6 +184,9 @@
org.bedework.mail.jar.name=bwmail-${product.version}.jar
org.bedework.mail.jar=${org.bedework.temp.jars}/${org.bedework.mail.jar.name}
+org.bedework.uportal.jar.name=bwuportal-support-${product.version}.jar
+org.bedework.uportal.jar=${org.bedework.temp.jars}/${org.bedework.uportal.jar.name}
+
org.bedework.webadmin.jar.name=bwwebadmin-${product.version}.jar
org.bedework.webadmin.jar=${org.bedework.temp.jars}/${org.bedework.webadmin.jar.name}
Modified: trunk/calendar3/bldfiles/globalDefs.xml
===================================================================
--- trunk/calendar3/bldfiles/globalDefs.xml 2006-06-16 16:01:43 UTC (rev 593)
+++ trunk/calendar3/bldfiles/globalDefs.xml 2006-06-19 00:38:14 UTC (rev 594)
@@ -87,6 +87,7 @@
<property name="org.bedework.testsuite.base" location="${calendar.dir}/test" />
<property name="org.bedework.timers.base" location="${calendar.dir}/timers" />
<property name="org.bedework.tools.base" location="${calendar.dir}/tools" />
+ <property name="org.bedework.uportal.base" location="${calendar.dir}/uportal" />
<property name="org.bedework.webadmin.base" location="${calendar.dir}/webadmin" />
<property name="org.bedework.webclient.base" location="${calendar.dir}/webclient" />
<property name="org.bedework.webcommon.base" location="${calendar.dir}/webcommon" />
Modified: trunk/calendar3/build.xml
===================================================================
--- trunk/calendar3/build.xml 2006-06-16 16:01:43 UTC (rev 593)
+++ trunk/calendar3/build.xml 2006-06-19 00:38:14 UTC (rev 594)
@@ -107,7 +107,7 @@
bld.calenv,bld.ical,bld.core,
bld.http,bld.caldavclientapi,
bld.calsvci,bld.mail,bld.logging,
- bld.calsvc,bld.appcommon,
+ bld.calsvc,bld.appcommon,bld.uportal,
bld.webadmin,bld.webclient,
bld.synchml,bld.caldav,
bld.timers,build.tools,
@@ -258,6 +258,7 @@
${org.bedework.synchml.base}/src:
${org.bedework.timers.base}/src:
${org.bedework.tools.base}/src:
+ ${org.bedework.uportal.base}/src:
${org.bedework.webadmin.base}/src:
${org.bedework.webclient.base}/src:
${org.bedework.webcommon.base}/src:"
@@ -446,6 +447,17 @@
target="build" />
</target>
+ <!-- ======================== uportal target =======================
+ This builds the uportal support classes jar.
+ ================================================================= -->
+
+ <target name="bld.uportal"
+ depends="init,bld.locale"
+ description="Build calendar uportal support classes jar">
+ <ant antfile="${org.bedework.uportal.base}/build.xml" inheritrefs="true"
+ target="build" />
+ </target>
+
<!-- ======================== webcommon target =======================
This builds the web common classes jar.
================================================================= -->
Added: trunk/calendar3/lib/pluto-1.0.1-rc2.jar
===================================================================
(Binary files differ)
Property changes on: trunk/calendar3/lib/pluto-1.0.1-rc2.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/calendar3/lib/portals-bridges-1.0/portals-bridges-common-1.0.jar
===================================================================
(Binary files differ)
Property changes on: trunk/calendar3/lib/portals-bridges-1.0/portals-bridges-common-1.0.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/calendar3/lib/portals-bridges-1.0/portals-bridges-struts-1.2.7-1.0.jar
===================================================================
(Binary files differ)
Property changes on: trunk/calendar3/lib/portals-bridges-1.0/portals-bridges-struts-1.2.7-1.0.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/calendar3/lib/portals-bridges-1.0/struts-portlet.tld
===================================================================
--- trunk/calendar3/lib/portals-bridges-1.0/struts-portlet.tld (rev 0)
+++ trunk/calendar3/lib/portals-bridges-1.0/struts-portlet.tld 2006-06-19 00:38:14 UTC (rev 594)
@@ -0,0 +1,813 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
+<!--
+Copyright 2004 The Apache Software Foundation
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+ $Id: struts-portlet.tld 188237 2005-01-21 16:28:13Z ate $
+-->
+<taglib>
+<tlibversion>1.2</tlibversion>
+<jspversion>1.1</jspversion>
+<shortname>html</shortname>
+<uri>http://portals.apache.org/bridges/struts/tags-portlet</uri>
+<tag>
+<name>form</name>
+<tagclass>org.apache.portals.bridges.struts.taglib.FormTag</tagclass>
+<bodycontent>JSP</bodycontent>
+<attribute>
+<name>action</name>
+<required>true</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>acceptCharset</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>disabled</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>enctype</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>focus</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>focusIndex</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>method</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onreset</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onsubmit</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>readonly</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>scriptLanguage</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>style</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>styleClass</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>styleId</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>target</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+</tag>
+<tag>
+<name>image</name>
+<tagclass>org.apache.portals.bridges.struts.taglib.ImageTag</tagclass>
+<attribute>
+<name>accesskey</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>align</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>alt</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>altKey</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>border</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>bundle</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>disabled</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>indexed</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>locale</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onblur</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onchange</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onclick</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>ondblclick</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onfocus</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onkeydown</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onkeypress</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onkeyup</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onmousedown</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onmousemove</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onmouseout</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onmouseover</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onmouseup</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>page</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>pageKey</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>property</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>src</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>srcKey</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>style</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>styleClass</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>styleId</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>tabindex</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>title</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>titleKey</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>value</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+</tag>
+<tag>
+<name>img</name>
+<tagclass>org.apache.portals.bridges.struts.taglib.ImgTag</tagclass>
+<bodycontent>empty</bodycontent>
+<attribute>
+<name>align</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>alt</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>altKey</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>border</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>bundle</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>contextRelative</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>height</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>hspace</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>imageName</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>ismap</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>locale</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>lowsrc</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>name</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onclick</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>ondblclick</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onkeydown</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onkeypress</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onkeyup</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onmousedown</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onmousemove</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onmouseout</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onmouseover</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onmouseup</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>paramId</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>page</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>pageKey</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>action</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>module</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>paramName</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>paramProperty</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>paramScope</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>property</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>scope</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>src</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>srcKey</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>style</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>styleClass</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>styleId</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>title</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>titleKey</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>useLocalEncoding</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>usemap</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>vspace</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>width</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+</tag>
+<tag>
+<name>link</name>
+<tagclass>org.apache.portals.bridges.struts.taglib.LinkTag</tagclass>
+<attribute>
+<name>actionURL</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>renderURL</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>resourceURL</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>accesskey</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>action</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>module</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>anchor</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>forward</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>href</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>indexed</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>indexId</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>bundle</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>linkName</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>name</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onblur</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onclick</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>ondblclick</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onfocus</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onkeydown</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onkeypress</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onkeyup</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onmousedown</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onmousemove</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onmouseout</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onmouseover</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>onmouseup</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>page</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>paramId</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>paramName</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>paramProperty</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>paramScope</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>property</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>scope</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>style</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>styleClass</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>styleId</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>tabindex</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>target</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>title</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>titleKey</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>transaction</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>useLocalEncoding</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+</tag>
+<tag>
+<name>rewrite</name>
+<tagclass>org.apache.portals.bridges.struts.taglib.RewriteTag</tagclass>
+<bodycontent>empty</bodycontent>
+<attribute>
+<name>actionURL</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>renderURL</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>resourceURL</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>action</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>module</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>anchor</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>forward</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>href</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>name</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>page</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>paramId</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>paramName</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>paramProperty</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>paramScope</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>property</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>scope</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>transaction</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+<attribute>
+<name>useLocalEncoding</name>
+<required>false</required>
+<rtexprvalue>true</rtexprvalue>
+</attribute>
+</tag>
+</taglib>
Added: trunk/calendar3/lib/portlet-api-1.0.jar
===================================================================
(Binary files differ)
Property changes on: trunk/calendar3/lib/portlet-api-1.0.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/calendar3/lib/xalan-2-6-0.jar
===================================================================
(Binary files differ)
Property changes on: trunk/calendar3/lib/xalan-2-6-0.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/calendar3/uportal/build.xml
===================================================================
--- trunk/calendar3/uportal/build.xml (rev 0)
+++ trunk/calendar3/uportal/build.xml 2006-06-19 00:38:14 UTC (rev 594)
@@ -0,0 +1,44 @@
+<!-- This is the build.xml for the bedework uportal support classes component.
+
+ Authors: Mike Douglass douglm at rpi.edu
+-->
+
+<project name="uportal.compile" default="build" >
+ <property name="base.name" value="uportal"/>
+
+ <target name="init">
+ <dirname property="this.dir" file="${ant.file}"/>
+ <property name="source.home" location="${this.dir}/src"/>
+ </target>
+
+ <target name="build" depends="init"
+ description="Compile bedework uportal support Java sources">
+ <!-- ==================== Sources and classes ====================== -->
+
+ <fileset id="base.java.sources" dir="${source.home}" >
+ <include name="ca/mun/**/*.java"/>
+ </fileset>
+
+ <patternset id="base.class.patternset">
+ <include name="ca/mun/**/*.class"/>
+ </patternset>
+
+ <!-- ==================== Compilation Classpath ==================== -->
+
+ <path id="compile.classpath">
+ <pathelement location="${servlet.jar}"/>
+ <pathelement location="${servlet.jsp.jar}"/>
+ <pathelement location="${portlet.jar}"/>
+ <pathelement location="${struts.jar}"/>
+ <pathelement location="${pluto.jar}"/>
+ <pathelement location="${portals-bridges-common.jar}"/>
+ <pathelement location="${portals-bridges-struts.jar}"/>
+ </path>
+
+ <!-- ==================== Build Target ============================= -->
+
+ <property name="build.jar.file" location="${org.bedework.uportal.jar}" />
+
+ <ant antfile="${buildjar}" inheritRefs="true" target="build" />
+ </target>
+</project>
Added: trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/PortalServletContextProvider.java
===================================================================
--- trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/PortalServletContextProvider.java (rev 0)
+++ trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/PortalServletContextProvider.java 2006-06-19 00:38:14 UTC (rev 594)
@@ -0,0 +1,39 @@
+package ca.mun.portal.strutsbridge;
+
+import javax.portlet.GenericPortlet;
+import javax.portlet.PortletRequest;
+import javax.portlet.PortletResponse;
+import javax.servlet.ServletContext;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletRequestWrapper;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.pluto.core.impl.PortletContextImpl;
+import org.apache.portals.bridges.common.ServletContextProvider;
+
+/**
+ * ServletContextProviderImpl supplies access to the Servlet context of uPortal Portlet.
+ *
+ * @author Satish Sekharan
+ */
+public class PortalServletContextProvider implements ServletContextProvider {
+
+ public ServletContext getServletContext(GenericPortlet portlet) {
+ return ((PortletContextImpl)portlet.getPortletContext())
+ .getServletContext();
+ }
+
+ public HttpServletRequest getHttpServletRequest(GenericPortlet portlet,
+ PortletRequest request) {
+ return (HttpServletRequest)((HttpServletRequestWrapper)request).getRequest();
+ }
+
+
+ public HttpServletResponse getHttpServletResponse(GenericPortlet portlet,
+ PortletResponse response) {
+ PortletResponseWrapper wrapper = new PortletResponseWrapper((HttpServletResponse)response);
+
+ return (HttpServletResponse)wrapper.getResponse();
+ }
+
+}
\ No newline at end of file
Added: trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/PortletResponseWrapper.java
===================================================================
--- trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/PortletResponseWrapper.java (rev 0)
+++ trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/PortletResponseWrapper.java 2006-06-19 00:38:14 UTC (rev 594)
@@ -0,0 +1,38 @@
+package ca.mun.portal.strutsbridge;
+
+import java.io.IOException;
+import java.io.OutputStreamWriter;
+import java.io.PrintWriter;
+import javax.servlet.ServletOutputStream;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpServletResponseWrapper;
+
+/** Implementation of <b>HttpServletResponseWrapper</b> that works with
+ * uPortal 2.5.
+ *
+ * @author Satish Sekharan
+ * @version 1.0
+ */
+public class PortletResponseWrapper extends HttpServletResponseWrapper {
+
+ /** Constructor
+ *
+ * @param response HttpServletResponse
+ */
+ public PortletResponseWrapper(HttpServletResponse response) {
+ super(response);
+ }
+
+ public ServletOutputStream getOutputStream() throws IOException {
+ return getResponse().getOutputStream();
+ }
+
+ public PrintWriter getWriter() throws IOException {
+ return (new PrintWriter(new OutputStreamWriter(getOutputStream(),
+ getCharacterEncoding()), true));
+ }
+
+ public String encodeUrl(String path) {
+ return super.encodeUrl(path);
+ }
+}
\ No newline at end of file
Added: trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/taglib/CalRewriteTag.java
===================================================================
--- trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/taglib/CalRewriteTag.java (rev 0)
+++ trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/taglib/CalRewriteTag.java 2006-06-19 00:38:14 UTC (rev 594)
@@ -0,0 +1,173 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package ca.mun.portal.strutsbridge.taglib;
+
+import javax.servlet.ServletRequest; // for javadoc
+import javax.servlet.jsp.JspException;
+import javax.servlet.jsp.tagext.BodyContent;
+
+import org.apache.portals.bridges.struts.PortletServlet;
+import org.apache.portals.bridges.struts.config.PortletURLTypes; // javadoc
+import org.apache.struts.taglib.html.RewriteTag;
+import org.apache.struts.taglib.TagUtils;
+
+/** Supports the Struts html:rewrite tag to be used within uPortlet context for
+ * generating urls for the bedework portlet.
+ *
+ * @author <a href="mailto:ate at douma.nu">Ate Douma</a>
+ * @author <a href="mailto:satish at mun.ca">Satish Sekharan</a>
+ * @version $Id: RewriteTag.java 2005-10-25 12:31:13Z satish $
+ */
+public class CalRewriteTag extends RewriteTag {
+ /** Indicates which type of a url must be generated: action, render or resource.
+ * <p>If not specified, the type will be determined by
+ * {@link PortletURLTypes#getType(String)}</p>.
+ */
+ protected PortletURLTypes.URLType urlType = null;
+
+ /**
+ * @return String
+ */
+ public String getActionURL() {
+ if (urlType != null &&
+ urlType.equals(PortletURLTypes.URLType.ACTION)) {
+ return "true";
+ }
+
+ return "false";
+ }
+
+ /** Render an ActionURL when set to "true"
+ *
+ * @param value "true" renders an ActionURL
+ */
+ public void setActionURL(String value) {
+ if (value != null &&
+ value.equalsIgnoreCase("true")) {
+ urlType = PortletURLTypes.URLType.ACTION;
+ } else {
+ urlType = null;
+ }
+ }
+
+ /**
+ * @return String
+ */
+ public String getRenderURL() {
+ if (urlType != null &&
+ urlType.equals(PortletURLTypes.URLType.RENDER)) {
+ return "true";
+ }
+
+ return "false";
+ }
+
+ /** Render a RenderURL when set to "true"
+ *
+ * @param value "true" renders a RenderURL
+ */
+ public void setRenderURL(String value) {
+ if (value != null &&
+ value.equalsIgnoreCase("true")) {
+ urlType = PortletURLTypes.URLType.RENDER;
+ } else {
+ urlType = null;
+ }
+ }
+
+ /**
+ * @return String
+ */
+ public String getResourceURL() {
+ if (urlType != null &&
+ urlType.equals(PortletURLTypes.URLType.RESOURCE)) {
+ return "true";
+ }
+
+ return "false";
+ }
+
+ /**
+ * Render a ResourceURL when set to "true"
+ * @param value "true" renders a ResourceURL
+ */
+ public void setResourceURL(String value) {
+ if (value != null &&
+ value.equalsIgnoreCase("true")) {
+ urlType = PortletURLTypes.URLType.RESOURCE;
+ } else {
+ urlType = null;
+ }
+ }
+
+ /* bedework dummy request parameter - it's an encoded form of ?be=d */
+ private static final String bedeworkDummyPar = "%3Fbe%3Dd";
+
+ /** Generates a PortletURL or a ResourceURL for the link when in the context of a
+ * {@link PortletServlet#isPortletRequest(ServletRequest) PortletRequest}, otherwise
+ * the default behaviour is maintained.
+ *
+ * @return the link url
+ * @exception JspException if a JSP exception has occurred
+ */
+ public int doStartTag() throws JspException {
+ if ( PortletServlet.isPortletRequest(pageContext.getRequest())) {
+ String url = null;
+ BodyContent bodyContent = pageContext.pushBody();
+
+ try {
+ super.doStartTag();
+ url = bodyContent.getString();
+
+ /* replace with a relative URL
+ * (quick and dirty fix for now - change this later)
+ */
+ url = url.replaceFirst("http://(.*)/","/");
+ url = url.replaceFirst("https://(.*)/","/");
+
+ url = TagsSupport.getURL(pageContext, url, urlType);
+
+ /* remove embedded anchor because calendar xsl stylesheet
+ * adds extra parameters later during transformation
+ */
+ int hash = url.indexOf('#');
+ if ( hash > -1 ) {
+ url = url.substring(0,hash);
+ }
+
+ /* Remove bedework dummy request parameter -
+ * it's an encoded form of ?be=d */
+ url = url.replaceAll(bedeworkDummyPar, "");
+
+ //Generate valid xml markup for transformation
+ url = url.replaceAll("&","&");
+
+ } finally {
+ pageContext.popBody();
+ }
+
+ TagUtils.getInstance().write(pageContext, url);
+ return (SKIP_BODY);
+ } else {
+ return super.doStartTag();
+ }
+ }
+
+ public void release() {
+ super.release();
+ urlType = null;
+ }
+}
Added: trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/taglib/TagsSupport.java
===================================================================
--- trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/taglib/TagsSupport.java (rev 0)
+++ trunk/calendar3/uportal/src/ca/mun/portal/strutsbridge/taglib/TagsSupport.java 2006-06-19 00:38:14 UTC (rev 594)
@@ -0,0 +1,156 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package ca.mun.portal.strutsbridge.taglib;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.jsp.PageContext;
+
+import org.apache.portals.bridges.struts.PortletServlet;
+import org.apache.portals.bridges.struts.StrutsPortlet;
+import org.apache.portals.bridges.struts.StrutsPortletURL;
+import org.apache.portals.bridges.struts.config.StrutsPortletConfig;
+import org.apache.portals.bridges.struts.config.PortletURLTypes; // javadoc
+
+/** Utility class providing common Struts Bridge Tags functionality.
+ *
+ * @author <a href="mailto:ate at douma.nu">Ate Douma</a>
+ * @version $Id: TagsSupport.java 306958 2005-10-06 23:23:37Z ate $
+ */
+class TagsSupport {
+ /**
+ * Private constructor as this class isn't supposed to be instantiated.
+ *
+ */
+ private TagsSupport(){}
+
+ /** Resolves a, possibly relative, url to a context relative one for use
+ * within a Portlet context.
+ *
+ * <p>The url parameter may contain relative (../) elements.
+ *
+ * @param pageContext the JSP pageContext
+ * @param url the url to resolve
+ * @param addContextPath
+ * @return the resolved url
+ */
+ public static String getContextRelativeURL(PageContext pageContext,
+ String url,
+ boolean addContextPath) {
+ if ( !url.startsWith("/")) {
+ String newUrl = url;
+ String currentPath =
+ (String)pageContext.getRequest().getAttribute(StrutsPortlet.PAGE_URL);
+
+ if (addContextPath) {
+ currentPath = ((HttpServletRequest)pageContext.getRequest()).getContextPath() +
+ currentPath;
+ }
+
+ if (addContextPath || currentPath.length() > 1 /* keep "/" */) {
+ currentPath = currentPath.substring(0,currentPath.lastIndexOf('/'));
+ }
+
+ if (currentPath.length() == 0) {
+ currentPath = "/";
+ }
+
+ while (currentPath.length() > 0) {
+ if (!newUrl.startsWith("../")) {
+ break;
+ }
+
+ currentPath = currentPath.substring(0, currentPath.lastIndexOf('/'));
+ newUrl = newUrl.substring(3);
+ }
+
+ if (currentPath.length() > 1) {
+ url = currentPath + "/" + newUrl;
+ } else {
+ url = "/" + newUrl;
+ }
+ }
+
+ return url;
+ }
+
+ /**
+ * Creates an action or render PortletURL, or a ResourceURL.
+ *
+ * <p>The url parameter is first {@link #getContextRelativeURL(PageContext, String) resolved}
+ * to an context relative url.<br/>
+ * Then, a prefixed contextPath is removed from the resulting url.<br/>
+ * If the type parameter is specified (not null), the type of url created is based on its value.<br/>
+ * Otherwise, {@link PortletURLTypes#getType(String)} is used to determine which
+ * type of url must be created.
+ *
+ * @param pageContext the JSP pageContext
+ * @param url the url to resolve
+ * @param type indicated which type of url must be created
+ * @return an action or render PortletURL, or a ResourceURL
+ */
+ public static String getURL(PageContext pageContext,
+ String url,
+ PortletURLTypes.URLType type) {
+ url = getContextRelativeURL(pageContext,url,false);
+ String contextPath = ((HttpServletRequest)pageContext.getRequest()).getContextPath();
+ if (url.startsWith(contextPath + "/")) {
+ url = url.substring(contextPath.length());
+ }
+
+ if (type == null) {
+ StrutsPortletConfig strutsPortletConfig = (StrutsPortletConfig)pageContext.getAttribute(StrutsPortlet.STRUTS_PORTLET_CONFIG,PageContext.APPLICATION_SCOPE);
+ type = strutsPortletConfig.getPortletURLTypes().getType(url);
+ }
+
+ if (type.equals(PortletURLTypes.URLType.ACTION)) {
+ return StrutsPortletURL.createActionURL(pageContext.getRequest(),url).toString();
+ }
+
+ if (type.equals(PortletURLTypes.URLType.RENDER)) {
+ return StrutsPortletURL.createRenderURL(pageContext.getRequest(),url).toString();
+ }
+
+ // type.equals(PortletURLTypes.URLType.RESOURCE)
+ if (url.startsWith("/")) {
+ return contextPath + url;
+ }
+
+ return contextPath + "/" + url;
+ }
+
+ /** Replaces the action url as generated by the struts:form tag with an action PortletURL.
+ *
+ * @param pageContext the JSP pageContext
+ * @param formStartElement the formStartElement as generated by the struts:form tag
+ * @return the formStartElement containing an action PortletURL
+ */
+ public static String getFormTagRenderFormStartElement(PageContext pageContext,
+ String formStartElement) {
+ if (PortletServlet.isPortletRequest(pageContext.getRequest())) {
+ int actionURLStart = formStartElement.indexOf("action=") + 8;
+ int actionURLEnd = formStartElement.indexOf('"', actionURLStart);
+ String actionURL = formStartElement.substring(actionURLStart,
+ actionURLEnd);
+
+ formStartElement = formStartElement.substring(0, actionURLStart) +
+ StrutsPortletURL.createActionURL(pageContext.getRequest(),
+ actionURL).toString() +
+ formStartElement.substring(actionURLEnd);
+ }
+
+ return formStartElement;
+ }
+}
More information about the Bedework-commit
mailing list