You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by hl...@apache.org on 2008/12/29 23:59:12 UTC
svn commit: r730009 [2/2] - in /tapestry/tapestry5/trunk: ./
quickstart/src/main/resources/archetype-resources/src/main/resources/
src/site/apt/guide/ tapestry-core/
tapestry-core/src/main/java/org/apache/tapestry5/internal/
tapestry-core/src/main/java...
Added: tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/AppModule.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/AppModule.java?rev=730009&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/AppModule.java (added)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/AppModule.java Mon Dec 29 14:59:10 2008
@@ -0,0 +1,35 @@
+// Copyright 2008 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 org.example.testapp.services;
+
+import org.apache.tapestry5.SymbolConstants;
+import org.apache.tapestry5.internal.spring.SpringModule;
+import org.apache.tapestry5.ioc.MappedConfiguration;
+import org.apache.tapestry5.ioc.ServiceBinder;
+import org.apache.tapestry5.ioc.annotations.SubModule;
+
+@SubModule(SpringModule.class)
+public class AppModule
+{
+ public static final void bind(ServiceBinder binder)
+ {
+ binder.bind(StringTransformer.class, UpcaseStringTransformerImpl.class);
+ }
+
+ public static void contributeApplicationDefaults(MappedConfiguration<String, String> configuration)
+ {
+ configuration.add(SymbolConstants.PRODUCTION_MODE, "false");
+ }
+}
Added: tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/CustomizedFilter.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/CustomizedFilter.java?rev=730009&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/CustomizedFilter.java (added)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/CustomizedFilter.java Mon Dec 29 14:59:10 2008
@@ -0,0 +1,34 @@
+// Copyright 2008 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 org.example.testapp.services;
+
+import org.apache.tapestry5.spring.TapestrySpringFilter;
+import org.springframework.web.context.ConfigurableWebApplicationContext;
+
+import javax.servlet.ServletContext;
+
+public class CustomizedFilter extends TapestrySpringFilter
+{
+ @Override
+ public void customizeApplicationContext(ServletContext servletContext,
+ ConfigurableWebApplicationContext applicationContext)
+ {
+ servletContext.setAttribute("status-message", "Filter Initialized");
+
+ // Just want that line coverage for the base class.
+
+ super.customizeApplicationContext(servletContext, applicationContext);
+ }
+}
Added: tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/Flintstone.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/Flintstone.java?rev=730009&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/Flintstone.java (added)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/Flintstone.java Mon Dec 29 14:59:10 2008
@@ -0,0 +1,20 @@
+// Copyright 2008 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 org.example.testapp.services;
+
+public interface Flintstone
+{
+ void bam();
+}
Added: tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/FlintstoneImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/FlintstoneImpl.java?rev=730009&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/FlintstoneImpl.java (added)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/FlintstoneImpl.java Mon Dec 29 14:59:10 2008
@@ -0,0 +1,22 @@
+// Copyright 2008 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 org.example.testapp.services;
+
+public class FlintstoneImpl implements Flintstone
+{
+ public void bam()
+ {
+ }
+}
Added: tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/SpringStatusProvider.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/SpringStatusProvider.java?rev=730009&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/SpringStatusProvider.java (added)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/SpringStatusProvider.java Mon Dec 29 14:59:10 2008
@@ -0,0 +1,43 @@
+// Copyright 2008 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 org.example.testapp.services;
+
+import org.apache.tapestry5.ioc.annotations.InjectService;
+import org.apache.tapestry5.services.Context;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.SpringVersion;
+
+public class SpringStatusProvider
+{
+ private final Context context;
+ private final Upcase upcase;
+
+ /**
+ * Just wanted to get code coverage for using @InjectService here.
+ */
+ @Autowired
+ public SpringStatusProvider(@InjectService("Context") Context context, Upcase upcase)
+ {
+ this.context = context;
+ this.upcase = upcase;
+ }
+
+ public String getStatus()
+ {
+ return upcase.toUpperCase(String.format("Spring version %s: %s",
+ SpringVersion.getVersion(),
+ context.getAttribute("status-message")));
+ }
+}
Added: tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/StringTransformer.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/StringTransformer.java?rev=730009&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/StringTransformer.java (added)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/StringTransformer.java Mon Dec 29 14:59:10 2008
@@ -0,0 +1,20 @@
+// Copyright 2008 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 org.example.testapp.services;
+
+public interface StringTransformer
+{
+ String transform(String input);
+}
Modified: tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/UpcaseImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/UpcaseImpl.java?rev=730009&r1=730008&r2=730009&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/UpcaseImpl.java (original)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/UpcaseImpl.java Mon Dec 29 14:59:10 2008
@@ -14,12 +14,21 @@
package org.example.testapp.services;
+import org.apache.tapestry5.ioc.annotations.Inject;
+import org.springframework.beans.factory.annotation.Autowired;
+
public class UpcaseImpl implements Upcase
{
+ private final StringTransformer transformer;
- public String toUpperCase(String input)
+ @Autowired
+ public UpcaseImpl(@Inject StringTransformer transformer)
{
- return input.toUpperCase();
+ this.transformer = transformer;
}
+ public String toUpperCase(String input)
+ {
+ return transformer.transform(input);
+ }
}
Added: tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/UpcaseStringTransformerImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/UpcaseStringTransformerImpl.java?rev=730009&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/UpcaseStringTransformerImpl.java (added)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp/services/UpcaseStringTransformerImpl.java Mon Dec 29 14:59:10 2008
@@ -0,0 +1,23 @@
+// Copyright 2008 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 org.example.testapp.services;
+
+public class UpcaseStringTransformerImpl implements StringTransformer
+{
+ public String transform(String input)
+ {
+ return input.toUpperCase();
+ }
+}
Modified: tapestry/tapestry5/trunk/tapestry-spring/src/test/resources/log4j.properties
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/resources/log4j.properties?rev=730009&r1=730008&r2=730009&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/resources/log4j.properties (original)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/resources/log4j.properties Mon Dec 29 14:59:10 2008
@@ -12,20 +12,20 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-log4j.rootCategory=WARN, A1
-
-# A1 is set to be a ConsoleAppender.
-log4j.appender.A1=org.apache.log4j.ConsoleAppender
-
-# A1 uses PatternLayout.
-log4j.appender.A1.layout=org.apache.log4j.PatternLayout
-log4j.appender.A1.layout.ConversionPattern=[%p] %c{1} %m%n
-
-log4j.category.org.apache.tapestry5.TapestryFilter=info
-log4j.category.org.apache.tapestry=error
-log4j.category.tapestry=error
-log4j.category.tapestry.ioc.ClassFactory=error
-
-log4j.category.app=info
-log4j.category.org.apache.tapestry5.integration.app1=error
+log4j.rootCategory=INFO, A1
+
+# A1 is set to be a ConsoleAppender.
+log4j.appender.A1=org.apache.log4j.ConsoleAppender
+
+# A1 uses PatternLayout.
+log4j.appender.A1.layout=org.apache.log4j.PatternLayout
+log4j.appender.A1.layout.ConversionPattern=[%p] %c{1} %m%n
+
+log4j.category.org.apache.tapestry5.TapestryFilter=info
+log4j.category.org.apache.tapestry=error
+log4j.category.tapestry=error
+log4j.category.tapestry.ioc.ClassFactory=error
+
+log4j.category.app=info
+log4j.category.org.apache.tapestry5.integration.app1=error
log4j.category.org.apache.tapestry5.corelib=error
Modified: tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp/Start.tml
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp/Start.tml?rev=730009&r1=730008&r2=730009&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp/Start.tml (original)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp/Start.tml Mon Dec 29 14:59:10 2008
@@ -1,21 +1,25 @@
<html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd">
- <head>
- <title>Start Page</title>
- </head>
- <body>
- <p>
- This is a silly application for converting text to uppercase.
- </p>
- <t:form>
- <t:errors/>
- <t:label for="input"/>
- <input t:type="textfield" t:id="input" size="40"/>
- <br/>
- <input type="submit" value="Convert"/>
- </t:form>
-
- <p>
- Spring beans: [${springBeans}]
- </p>
- </body>
+ <head>
+ <title>Start Page</title>
+ </head>
+ <body>
+ <p>
+ This is a silly application for converting text to uppercase.
+ </p>
+ <t:form>
+ <t:errors/>
+ <t:label for="input"/>
+ <input t:type="textfield" t:id="input" size="40"/>
+ <br/>
+ <input type="submit" value="Convert"/>
+ </t:form>
+
+ <dl>
+ <dt>Spring beans:</dt>
+ <dd id="beans">${springBeans}</dd>
+ <dt>Filter message:</dt>
+ <dd id="message">${statusProvider.status}</dd>
+ </dl>
+
+ </body>
</html>
\ No newline at end of file
Modified: tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp/WEB-INF/applicationContext.xml
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp/WEB-INF/applicationContext.xml?rev=730009&r1=730008&r2=730009&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp/WEB-INF/applicationContext.xml (original)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp/WEB-INF/applicationContext.xml Mon Dec 29 14:59:10 2008
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- Copyright 2007 The Apache Software Foundation
+ Copyright 2007, 2008 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.
@@ -15,9 +15,19 @@
limitations under the License.
-->
-<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:context="http://www.springframework.org/schema/context"
+ xsi:schemaLocation="
+ http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
+ http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd">
+
+ <context:annotation-config/>
-<beans>
<bean id="upcase" class="org.example.testapp.services.UpcaseImpl"/>
+ <bean id="status" class="org.example.testapp.services.SpringStatusProvider"/>
+
+ <bean id="fred" class="org.example.testapp.services.FlintstoneImpl"/>
+ <bean id="barney" class="org.example.testapp.services.FlintstoneImpl"/>
</beans>
Modified: tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp/WEB-INF/web.xml?rev=730009&r1=730008&r2=730009&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp/WEB-INF/web.xml (original)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp/WEB-INF/web.xml Mon Dec 29 14:59:10 2008
@@ -25,16 +25,10 @@
<filter>
<filter-name>app</filter-name>
<!-- Special filter that adds in a T5 IoC module derived from the Spring WebApplicationContext. -->
- <filter-class>org.apache.tapestry5.spring.TapestrySpringFilter</filter-class>
+ <filter-class>org.example.testapp.services.CustomizedFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>app</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
- <!--
- This is where the Spring support is configured.
- -->
- <listener>
- <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
- </listener>
</web-app>
Modified: tapestry/tapestry5/trunk/tapestry-spring/tapestry-spring.iml
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/tapestry-spring.iml?rev=730009&r1=730008&r2=730009&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/tapestry-spring.iml (original)
+++ tapestry/tapestry5/trunk/tapestry-spring/tapestry-spring.iml Mon Dec 29 14:59:10 2008
@@ -53,21 +53,18 @@
<orderEntry type="library" name="Maven: org.openqa.selenium.server:selenium-server-coreless:1.0-beta-1" level="project" />
<orderEntry type="library" name="Maven: ant:ant:1.6.5" level="project" />
<orderEntry type="library" name="Maven: jetty:org.mortbay.jetty:5.1.10" level="project" />
- <orderEntry type="library" name="Maven: commons-logging:commons-logging:1.1" level="project" />
+ <orderEntry type="library" exported="" name="Maven: commons-logging:commons-logging:1.1.1" level="project" />
<orderEntry type="library" name="Maven: javax.servlet:servlet-api:2.4" level="project" />
<orderEntry type="library" name="Maven: junit:junit:3.8.1" level="project" />
<orderEntry type="library" name="Maven: org.openqa.selenium.server:selenium-server:standalone:1.0-beta-1" level="project" />
<orderEntry type="library" name="Maven: org.openqa.selenium.server:selenium-server:1.0-beta-1" level="project" />
<orderEntry type="library" name="Maven: bouncycastle:bcprov-jdk15:135" level="project" />
<orderEntry type="library" name="Maven: org.testng:testng:jdk15:5.7" level="project" />
- <orderEntry type="library" name="Maven: org.springframework:spring-web:2.0" level="project" />
- <orderEntry type="library" name="Maven: logkit:logkit:1.0.1" level="project" />
- <orderEntry type="library" name="Maven: avalon-framework:avalon-framework:4.1.3" level="project" />
- <orderEntry type="library" name="Maven: org.springframework:spring-beans:2.0" level="project" />
- <orderEntry type="library" name="Maven: org.springframework:spring-core:2.0" level="project" />
- <orderEntry type="library" name="Maven: org.springframework:spring-context:2.0" level="project" />
- <orderEntry type="library" name="Maven: aopalliance:aopalliance:1.0" level="project" />
- <orderEntry type="library" name="Maven: org.springframework:spring-aop:2.0" level="project" />
+ <orderEntry type="library" exported="" name="Maven: org.springframework:spring-web:2.5.6" level="project" />
+ <orderEntry type="library" exported="" name="Maven: org.springframework:spring-beans:2.5.6" level="project" />
+ <orderEntry type="library" exported="" name="Maven: org.springframework:spring-core:2.5.6" level="project" />
+ <orderEntry type="library" exported="" name="Maven: org.springframework:spring-context:2.5.6" level="project" />
+ <orderEntry type="library" exported="" name="Maven: aopalliance:aopalliance:1.0" level="project" />
<orderEntry type="library" name="Maven: org.easymock:easymock:2.4" level="project" />
</component>
</module>