You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by ni...@apache.org on 2007/10/05 08:32:31 UTC
svn commit: r582094 - in /struts/maven/trunk/struts2-archetype-portlet: ./
src/main/resources/META-INF/ src/main/resources/archetype-resources/
src/main/resources/archetype-resources/src/main/java/
src/main/resources/archetype-resources/src/main/java/e...
Author: nilsga
Date: Thu Oct 4 23:32:29 2007
New Revision: 582094
URL: http://svn.apache.org/viewvc?rev=582094&view=rev
Log:
WW-1726 Refactored and updated portlet archetype. Now includes the jetty-pluto integration.
Added:
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/java/HelloAction.java
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/java/UpdateNameAction.java
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jsp/
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jsp/edit/
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jsp/edit/index.jsp
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jsp/view/
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jsp/view/index.jsp
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/test/
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/test/java/
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/test/java/JettyPlutoLauncher.java
Removed:
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/java/edit/
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/java/view/
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/edit/
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/help/
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/pluto-portal-driver-config.xml
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/pluto-portal-driver-services-config.xml
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/tld/
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/view/
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/index.jsp
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/test-portal/
Modified:
struts/maven/trunk/struts2-archetype-portlet/pom.xml
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/META-INF/archetype.xml
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/pom.xml
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/resources/struts.xml
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jetty-pluto-web-default.xml
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/portlet.xml
struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml
Modified: struts/maven/trunk/struts2-archetype-portlet/pom.xml
URL: http://svn.apache.org/viewvc/struts/maven/trunk/struts2-archetype-portlet/pom.xml?rev=582094&r1=582093&r2=582094&view=diff
==============================================================================
--- struts/maven/trunk/struts2-archetype-portlet/pom.xml (original)
+++ struts/maven/trunk/struts2-archetype-portlet/pom.xml Thu Oct 4 23:32:29 2007
@@ -1,6 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
-
-<project>
+<!--
+/*
+ * $Id: $
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.
+ */
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts-master</artifactId>
@@ -9,7 +31,7 @@
<modelVersion>4.0.0</modelVersion>
<artifactId>struts2-archetype-portlet</artifactId>
- <version>2.0.9-SNAPSHOT</version>
+ <version>2.1.0-SNAPSHOT</version>
<packaging>maven-plugin</packaging>
<name>Struts 2 Archetypes - Portlet</name>
Modified: struts/maven/trunk/struts2-archetype-portlet/src/main/resources/META-INF/archetype.xml
URL: http://svn.apache.org/viewvc/struts/maven/trunk/struts2-archetype-portlet/src/main/resources/META-INF/archetype.xml?rev=582094&r1=582093&r2=582094&view=diff
==============================================================================
--- struts/maven/trunk/struts2-archetype-portlet/src/main/resources/META-INF/archetype.xml (original)
+++ struts/maven/trunk/struts2-archetype-portlet/src/main/resources/META-INF/archetype.xml Thu Oct 4 23:32:29 2007
@@ -1,20 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<archetype>
- <id>struts2-archetype-blank</id>
+ <id>struts2-archetype-portlet</id>
<sources>
- <source>src/main/java/view/IndexAction.java</source>
- <source>src/main/java/edit/IndexAction.java</source>
+ <source>src/main/java/HelloAction.java</source>
+ <source>src/main/java/UpdateNameAction.java</source>
</sources>
+ <testSources>
+ <source>src/test/java/JettyPlutoLauncher.java</source>
+ </testSources>
<resources>
<resource>src/main/resources/struts.xml</resource>
- <resource>src/main/webapp/index.jsp</resource>
+ <resource>src/main/webapp/WEB-INF/jsp/view/index.jsp</resource>
+ <resource>src/main/webapp/WEB-INF/jsp/edit/index.jsp</resource>
<resource>src/main/webapp/WEB-INF/web.xml</resource>
<resource>src/main/webapp/WEB-INF/portlet.xml</resource>
- <resource>src/main/webapp/WEB-INF/view/index.jsp</resource>
- <resource>src/main/webapp/WEB-INF/help/index.jsp</resource>
- <resource>src/main/webapp/WEB-INF/edit/index-input.jsp</resource>
- <resource>src/main/webapp/WEB-INF/edit/index-success.jsp</resource>
+ <resource>src/main/webapp/WEB-INF/jetty-pluto-web-default.xml</resource>
</resources>
</archetype>
Modified: struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/pom.xml
URL: http://svn.apache.org/viewvc/struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/pom.xml?rev=582094&r1=582093&r2=582094&view=diff
==============================================================================
--- struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/pom.xml (original)
+++ struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/pom.xml Thu Oct 4 23:32:29 2007
@@ -1,137 +1,131 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project>
- <modelVersion>4.0.0</modelVersion>
- <groupId>${groupId}</groupId>
- <artifactId>${artifactId}</artifactId>
- <packaging>war</packaging>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>${groupId}</groupId>
+ <artifactId>${artifactId}</artifactId>
+ <packaging>war</packaging>
+ <name>My Portlet Application</name>
<version>${version}</version>
- <name>Struts 2 Portlet</name>
- <url>http://www.myComp.com</url>
- <description>Struts 2 Portlet</description>
<dependencies>
- <!-- Junit -->
<dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>3.8.1</version>
- <scope>test</scope>
- </dependency>
-
- <!-- Struts 2 -->
- <dependency>
- <groupId>org.apache.struts</groupId>
- <artifactId>struts2-core</artifactId>
- <version>2.0.9</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.struts</groupId>
- <artifactId>struts2-codebehind-plugin</artifactId>
- <version>2.0.9</version>
- </dependency>
- <dependency>
- <groupId>commons-lang</groupId>
- <artifactId>commons-lang</artifactId>
- <version>2.1</version>
- </dependency>
-
- <!-- Servlet, Jsp, and Portlet API's -->
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>servlet-api</artifactId>
- <version>2.4</version>
+ <groupId>javax.portlet</groupId>
+ <artifactId>portlet-api</artifactId>
+ <version>1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>jsp-api</artifactId>
- <version>2.0</version>
- <scope>provided</scope>
+ <groupId>org.apache.struts</groupId>
+ <artifactId>struts2-portlet-plugin</artifactId>
+ <version>2.1.0-SNAPSHOT</version>
</dependency>
- <dependency>
- <groupId>portlet-api</groupId>
- <artifactId>portlet-api</artifactId>
- <version>1.0</version>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-
- <build>
- <finalName>${artifactId}</finalName>
- <plugins>
- <plugin>
- <artifactId>maven-compiler-plugin</artifactId>
- <configuration>
- <source>1.5</source>
- <target>1.5</target>
- </configuration>
- </plugin>
- <!-- Plugin to generate the wrapper servlets in the web.xml -->
- <!--
- <plugin>
- <groupId>org.apache.pluto</groupId>
- <artifactId>maven-pluto-plugin</artifactId>
- <version>1.1.4</version>
- <executions>
- <execution>
- <phase>generate-resources</phase>
- <goals>
- <goal>assemble</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- -->
- <plugin>
- <groupId>org.mortbay.jetty</groupId>
- <artifactId>maven-jetty-plugin</artifactId>
- <version>6.1.1</version>
- <configuration>
- <scanIntervalSeconds>10</scanIntervalSeconds>
- <!-- Experimental pluto embedded configuration settings -->
- <!--
- <webXml>${project.build.directory}/pluto-resources/web.xml</webXml>
- <webDefaultXml>src/main/webapp/WEB-INF/jetty-pluto-web-default.xml</webDefaultXml>
- -->
- </configuration>
- <dependencies>
- <dependency>
- <groupId>portlet-api</groupId>
- <artifactId>portlet-api</artifactId>
- <version>1.0</version>
- </dependency>
- <!-- Experimental pluto embedded dependencies -->
- <!--
- <dependency>
- <groupId>org.apache.pluto</groupId>
- <artifactId>pluto-portal-driver</artifactId>
- <version>1.1.4</version>
- </dependency>
- <dependency>
- <groupId>org.apache.pluto</groupId>
- <artifactId>pluto-portal-driver-impl</artifactId>
- <version>1.1.4</version>
- </dependency>
- <dependency>
- <groupId>org.apache.pluto</groupId>
- <artifactId>pluto-container</artifactId>
- <version>1.1.4</version>
- </dependency>
- <dependency>
- <groupId>org.apache.pluto</groupId>
- <artifactId>pluto-taglib</artifactId>
- <version>1.1.4</version>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-web</artifactId>
- <version>2.0.2</version>
- </dependency>
- -->
- </dependencies>
- </plugin>
- </plugins>
- </build>
+ </dependencies>
+
+ <build>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <excludes>
+ <exclude>src/main/webapp/WEB-INF/jetty-pluto-web-default.xml</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ <plugins>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <profiles>
+ <profile>
+ <id>pluto-embedded</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.pluto</groupId>
+ <artifactId>maven-pluto-plugin</artifactId>
+ <version>1.1.3</version>
+ <executions>
+ <execution>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>assemble</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.mortbay.jetty</groupId>
+ <artifactId>maven-jetty-plugin</artifactId>
+ <configuration>
+ <webXml>${project.build.directory}/pluto-resources/web.xml</webXml>
+ <webDefaultXml>src/main/webapp/WEB-INF/jetty-pluto-web-default.xml</webDefaultXml>
+ <systemProperties>
+ <systemProperty>
+ <name>org.apache.pluto.embedded.portletId</name>
+ <value>HelloPortlet</value>
+ </systemProperty>
+ </systemProperties>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ <dependencies>
+ <dependency>
+ <groupId>com.bekk.boss</groupId>
+ <artifactId>maven-jetty-pluto-embedded</artifactId>
+ <version>1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.portlet</groupId>
+ <artifactId>portlet-api</artifactId>
+ <version>1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.mortbay.jetty</groupId>
+ <artifactId>jetty</artifactId>
+ <version>6.1.5</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.mortbay.jetty</groupId>
+ <artifactId>jsp-2.1</artifactId>
+ <version>6.1.5</version>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+ </profile>
+ </profiles>
+
+ <repositories>
+ <repository>
+ <id>apache.snapshots</id>
+ <name>Apache Maven Repository (Snapshots and Test Builds)</name>
+ <url>http://people.apache.org/repo/m2-snapshot-repository</url>
+ <releases><enabled>false</enabled></releases>
+ <snapshots><enabled>true</enabled></snapshots>
+ </repository>
+ <repository>
+ <id>opensymphony</id>
+ <name>opensymphony</name>
+ <layout>legacy</layout>
+ <snapshots>
+ <enabled>true</enabled>
+ <updatePolicy>always</updatePolicy>
+ <checksumPolicy>ignore</checksumPolicy>
+ </snapshots>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <url>http://maven.opensymphony.com</url>
+ </repository>
+ </repositories>
+
</project>
Added: struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/java/HelloAction.java
URL: http://svn.apache.org/viewvc/struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/java/HelloAction.java?rev=582094&view=auto
==============================================================================
--- struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/java/HelloAction.java (added)
+++ struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/java/HelloAction.java Thu Oct 4 23:32:29 2007
@@ -0,0 +1,38 @@
+package ${packageName};
+
+import javax.portlet.PortletPreferences;
+
+import org.apache.struts2.dispatcher.DefaultActionSupport;
+import org.apache.struts2.portlet.interceptor.PortletPreferencesAware;
+
+import com.opensymphony.xwork2.Preparable;
+
+public class HelloAction extends DefaultActionSupport implements PortletPreferencesAware {
+
+ private static final long serialVersionUID = 1L;
+
+ private String firstName;
+
+ private String lastName;
+
+ private PortletPreferences preferences;
+
+ public String getFirstName() {
+ return firstName;
+ }
+
+ public String getLastName() {
+ return lastName;
+ }
+
+ public void setPortletPreferences(PortletPreferences preferences) {
+ this.preferences = preferences;
+ }
+
+ @Override
+ public String execute() throws Exception {
+ firstName = preferences.getValue("firstName", "");
+ lastName = preferences.getValue("lastName", "");
+ return SUCCESS;
+ }
+}
Added: struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/java/UpdateNameAction.java
URL: http://svn.apache.org/viewvc/struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/java/UpdateNameAction.java?rev=582094&view=auto
==============================================================================
--- struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/java/UpdateNameAction.java (added)
+++ struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/java/UpdateNameAction.java Thu Oct 4 23:32:29 2007
@@ -0,0 +1,54 @@
+package ${packageName};
+
+import javax.portlet.PortletPreferences;
+
+import org.apache.struts2.dispatcher.DefaultActionSupport;
+import org.apache.struts2.portlet.interceptor.PortletPreferencesAware;
+
+public class UpdateNameAction extends DefaultActionSupport implements PortletPreferencesAware {
+
+ private static final long serialVersionUID = 1L;
+
+ private String firstName;
+
+ private String lastName;
+
+ private PortletPreferences preferences;
+
+ @Override
+ public String execute() throws Exception {
+ preferences.setValue("firstName", firstName);
+ preferences.setValue("lastName", lastName);
+ preferences.store();
+ getActionMessages().add("Name updated");
+ return SUCCESS;
+ }
+
+ @Override
+ public String input() throws Exception {
+ firstName = preferences.getValue("firstName", "");
+ lastName = preferences.getValue("lastName", "");
+ return INPUT;
+ }
+
+ public void setPortletPreferences(PortletPreferences preferences) {
+ this.preferences = preferences;
+ }
+
+ public void setFirstName(String firstName) {
+ this.firstName = firstName;
+ }
+
+ public String getFirstName() {
+ return firstName;
+ }
+
+ public void setLastName(String lastName) {
+ this.lastName = lastName;
+ }
+
+ public String getLastName() {
+ return lastName;
+ }
+
+}
Modified: struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/resources/struts.xml
URL: http://svn.apache.org/viewvc/struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/resources/struts.xml?rev=582094&r1=582093&r2=582094&view=diff
==============================================================================
--- struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/resources/struts.xml (original)
+++ struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/resources/struts.xml Thu Oct 4 23:32:29 2007
@@ -1,13 +1,23 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-
+<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
-
-<struts>
- <constant name="struts.codebehind.defaultPackage" value="struts-portlet-default" />
- <constant name="struts.codebehind.pathPrefix" value="/WEB-INF/" />
- <constant name="struts.devMode" value="true" />
- <include file="struts-portlet-default.xml" />
-</struts>
+<struts>
+ <package name="default" extends="struts-portlet-default" namespace="/view">
+ <action name="index" class="${packageName}.HelloAction">
+ <result>/WEB-INF/jsp/view/index.jsp</result>
+ </action>
+ </package>
+
+ <package name="edit" extends="struts-portlet-default" namespace="/edit">
+
+ <action name="index" class="${packageName}.UpdateNameAction">
+ <result type="redirectAction">
+ <param name="actionName">index</param>
+ <param name="portletMode">view</param>
+ </result>
+ <result name="input">/WEB-INF/jsp/edit/index.jsp</result>
+ </action>
+ </package>
+</struts>
\ No newline at end of file
Modified: struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jetty-pluto-web-default.xml
URL: http://svn.apache.org/viewvc/struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jetty-pluto-web-default.xml?rev=582094&r1=582093&r2=582094&view=diff
==============================================================================
--- struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jetty-pluto-web-default.xml (original)
+++ struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jetty-pluto-web-default.xml Thu Oct 4 23:32:29 2007
@@ -53,35 +53,49 @@
<param-name>org.mortbay.jetty.webapp.NoTLDJarPattern</param-name>
<param-value>start.jar|ant-.*\.jar|dojo-.*\.jar|jetty-.*\.jar|jsp-api-.*\.jar|junit-.*\.jar|servlet-api-.*\.jar|dnsns\.jar|rt\.jar|jsse\.jar|tools\.jar|sunpkcs11\.jar|sunjce_provider\.jar|xerces.*\.jar</param-value>
</context-param>
-
- <context-param>
- <param-name>contextConfigLocation</param-name>
- <param-value>
- /WEB-INF/pluto-portal-driver-services-config.xml
- </param-value>
- </context-param>
<listener>
- <listener-class> org.springframework.web.context.ContextLoaderListener
- </listener-class>
+ <listener-class>
+ com.bekk.boss.pluto.embedded.jetty.util.OverrideContextLoaderListener
+ </listener-class>
</listener>
<listener>
<listener-class>
- org.apache.pluto.driver.PortalStartupListener
+ com.bekk.boss.pluto.embedded.util.PortalStartupListener
</listener-class>
</listener>
<filter>
+ <filter-name>plutoResourceFilter</filter-name>
+ <filter-class>com.bekk.boss.pluto.embedded.util.PlutResourcesFilter</filter-class>
+ </filter>
+ <filter>
<filter-name>plutoPortalDriver</filter-name>
- <filter-class>org.apache.pluto.driver.PortalDriverFilter</filter-class>
+ <filter-class>com.bekk.boss.pluto.embedded.util.PlutoPortalDriverFilter</filter-class>
</filter>
- <filter-mapping>
+ <filter-mapping>
+ <filter-name>plutoResourceFilter</filter-name>
+ <url-pattern>*.css</url-pattern>
+ </filter-mapping>
+ <filter-mapping>
+ <filter-name>plutoResourceFilter</filter-name>
+ <url-pattern>*.gif</url-pattern>
+ </filter-mapping>
+ <filter-mapping>
+ <filter-name>plutoResourceFilter</filter-name>
+ <url-pattern>*.png</url-pattern>
+ </filter-mapping>
+ <filter-mapping>
+ <filter-name>plutoResourceFilter</filter-name>
+ <url-pattern>*.js</url-pattern>
+ </filter-mapping>
+ <filter-mapping>
<filter-name>plutoPortalDriver</filter-name>
- <url-pattern>/test-portal/index.jsp</url-pattern>
+ <url-pattern>/pluto/index.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>plutoPortalDriver</filter-name>
- <url-pattern>/test-portal/index.jsp/*</url-pattern>
+ <url-pattern>/pluto/index.jsp/*</url-pattern>
</filter-mapping>
<!-- ==================================================================== -->
@@ -262,7 +276,7 @@
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<servlet id="jsp">
<servlet-name>jsp</servlet-name>
- <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
+ <servlet-class>com.bekk.boss.pluto.embedded.util.PortletJspServlet</servlet-class>
<init-param>
<param-name>logVerbosityLevel</param-name>
<param-value>DEBUG</param-value>
@@ -322,18 +336,6 @@
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
-
- <jsp-config>
- <taglib>
- <taglib-uri>http://portals.apache.org/pluto</taglib-uri>
- <taglib-location>/WEB-INF/tld/pluto.tld</taglib-location>
- </taglib>
- <taglib>
- <taglib-uri>http://java.sun.com/portlet</taglib-uri>
- <taglib-location>/WEB-INF/tld/portlet.tld</taglib-location>
- </taglib>
- </jsp-config>
-
<!-- ==================================================================== -->
<locale-encoding-mapping-list>
Added: struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jsp/edit/index.jsp
URL: http://svn.apache.org/viewvc/struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jsp/edit/index.jsp?rev=582094&view=auto
==============================================================================
--- struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jsp/edit/index.jsp (added)
+++ struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jsp/edit/index.jsp Thu Oct 4 23:32:29 2007
@@ -0,0 +1,13 @@
+<%@ taglib prefix="s" uri="/struts-tags" %>
+
+<h2>Your name:</h2>
+
+<s:form action="index">
+ <table>
+ <s:textfield name="firstName" label="First name"/>
+ <s:textfield name="lastName" label="Last name"/>
+ <s:submit value="Update"/>
+ </table>
+</s:form>
+
+<s:actionmessage/>
\ No newline at end of file
Added: struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jsp/view/index.jsp
URL: http://svn.apache.org/viewvc/struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jsp/view/index.jsp?rev=582094&view=auto
==============================================================================
--- struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jsp/view/index.jsp (added)
+++ struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/jsp/view/index.jsp Thu Oct 4 23:32:29 2007
@@ -0,0 +1,9 @@
+<%@ taglib prefix="s" uri="/struts-tags" %>
+
+<s:if test='%{firstName != "" || lastName != ""}'>
+ <h2>Hello, <s:property value="firstName"/> <s:property value="lastName"/>
+</s:if>
+<s:else>
+ <b>No name set. Go to <a href="<s:url action="index" method="input" portletMode="edit"/>">edit mode</a> to set your name</b>
+</s:else>
+
Modified: struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/portlet.xml
URL: http://svn.apache.org/viewvc/struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/portlet.xml?rev=582094&r1=582093&r2=582094&view=diff
==============================================================================
--- struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/portlet.xml (original)
+++ struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/portlet.xml Thu Oct 4 23:32:29 2007
@@ -1,63 +1,58 @@
-<portlet-app version="1.0" xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd" id="struts-portlet">
- <portlet id="StrutsPortlet">
- <description xml:lang="EN">Blank Struts Portlet</description>
- <portlet-name>StrutsPortlet</portlet-name>
- <display-name xml:lang="EN">Blank Struts Portlet</display-name>
-
- <portlet-class>org.apache.struts2.portlet.dispatcher.Jsr168Dispatcher</portlet-class>
-
- <init-param>
- <name>actionPackages</name>
- <value>${package}</value>
- </init-param>
- <init-param>
- <!-- The view mode namespace. Maps to a namespace in the xwork config file -->
- <name>viewNamespace</name>
- <value>/view</value>
- </init-param>
- <init-param>
- <!-- The default action to invoke in view mode -->
- <name>defaultViewAction</name>
- <value>index</value>
- </init-param>
- <init-param>
- <!-- The view mode namespace. Maps to a namespace in the xwork config file -->
- <name>editNamespace</name>
- <value>/edit</value>
- </init-param>
- <init-param>
- <!-- The default action to invoke in view mode -->
- <name>defaultEditAction</name>
- <value>index</value>
- </init-param>
- <init-param>
- <!-- The view mode namespace. Maps to a namespace in the xwork config file -->
- <name>helpNamespace</name>
- <value>/help</value>
- </init-param>
- <init-param>
- <!-- The default action to invoke in view mode -->
- <name>defaultHelpAction</name>
- <value>index</value>
- </init-param>
-
- <expiration-cache>0</expiration-cache>
-
- <supports>
- <mime-type>text/html</mime-type>
- <portlet-mode>edit</portlet-mode>
- <portlet-mode>help</portlet-mode>
- </supports>
-
- <supported-locale>en</supported-locale>
-
- <portlet-info>
- <title>Struts Blank Porlet</title>
- <short-title>SB</short-title>
- <keywords>struts,portlet</keywords>
- </portlet-info>
- </portlet>
-
-</portlet-app>
+<?xml version="1.0" encoding="UTF-8"?>
+
+<portlet-app
+ version="1.0"
+ xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"
+ id="${artifactId}">
+
+ <portlet id="HelloPortlet">
+ <description xml:lang="EN">Simple hello world portlet</description>
+ <portlet-name>HelloPortlet</portlet-name>
+ <display-name xml:lang="EN">${artifactId}</display-name>
+
+ <portlet-class>org.apache.struts2.portlet.dispatcher.Jsr168Dispatcher</portlet-class>
+
+ <!-- The namespace for the actions configured for view mode -->
+ <init-param>
+ <name>viewNamespace</name>
+ <value>/view</value>
+ </init-param>
+
+ <!-- The default action to invoke in view mode. -->
+ <init-param>
+ <name>defaultViewAction</name>
+ <value>index</value>
+ </init-param>
+
+ <!-- The namespace for the actions configured for edit mode -->
+ <init-param>
+ <name>editNamespace</name>
+ <value>/edit</value>
+ </init-param>
+
+ <!-- The default action to invoke in edit mode. -->
+ <init-param>
+ <name>defaultEditAction</name>
+ <value>index!input</value>
+ </init-param>
+
+ <expiration-cache>0</expiration-cache>
+
+ <supports>
+ <mime-type>text/html</mime-type>
+ <portlet-mode>view</portlet-mode>
+ <portlet-mode>edit</portlet-mode>
+ </supports>
+
+ <supported-locale>en</supported-locale>
+
+ <portlet-info>
+ <title>HelloPortlet</title>
+ <short-title>HelloPortlet</short-title>
+ <keywords>struts 2,portlet,hello,world</keywords>
+ </portlet-info>
+ </portlet>
+
+</portlet-app>
Modified: struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml?rev=582094&r1=582093&r2=582094&view=diff
==============================================================================
--- struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml (original)
+++ struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml Thu Oct 4 23:32:29 2007
@@ -1,33 +1,5 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
-<web-app>
-
- <filter id="filterdispatcher">
- <filter-name>struts</filter-name>
- <filter-class>
- org.apache.struts2.dispatcher.FilterDispatcher
- </filter-class>
- <init-param>
- <param-name>actionPackages</param-name>
- <param-value>${package}</param-value>
- </init-param>
- </filter>
-
- <filter-mapping>
- <filter-name>struts</filter-name>
- <url-pattern>/*</url-pattern>
- </filter-mapping>
-
- <listener>
- <listener-class>
- org.apache.struts2.portlet.context.ServletContextHolderListener
- </listener-class>
- </listener>
-
- <servlet id="preparator">
- <servlet-name>preparator</servlet-name>
- <servlet-class>
- org.apache.struts2.portlet.context.PreparatorServlet
- </servlet-class>
- </servlet>
-</web-app>
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
+<web-app id="${artifactId}">
+ <!-- Empty -->
+</web-app>
Added: struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/test/java/JettyPlutoLauncher.java
URL: http://svn.apache.org/viewvc/struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/test/java/JettyPlutoLauncher.java?rev=582094&view=auto
==============================================================================
--- struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/test/java/JettyPlutoLauncher.java (added)
+++ struts/maven/trunk/struts2-archetype-portlet/src/main/resources/archetype-resources/src/test/java/JettyPlutoLauncher.java Thu Oct 4 23:32:29 2007
@@ -0,0 +1,21 @@
+package ${packageName};
+
+import org.apache.pluto.core.PortletServlet;
+import org.mortbay.jetty.Server;
+import org.mortbay.jetty.servlet.ServletHolder;
+import org.mortbay.jetty.webapp.WebAppContext;
+
+public class JettyPlutoLauncher {
+ public static void main(String[] args) throws Exception {
+ System.setProperty("org.apache.pluto.embedded.portletId", "HelloPortlet");
+ Server server = new Server(8080);
+ WebAppContext webapp = new WebAppContext("src/main/webapp", "/${artifactId}");
+ webapp.setDefaultsDescriptor("/WEB-INF/jetty-pluto-web-default.xml");
+ ServletHolder portletServlet = new ServletHolder(new PortletServlet());
+ portletServlet.setInitParameter("portlet-name", "HelloPortlet");
+ portletServlet.setInitOrder(1);
+ webapp.addServlet(portletServlet, "/PlutoInvoker/HelloPortlet");
+ server.addHandler(webapp);
+ server.start();
+ }
+}