You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by dr...@apache.org on 2011/12/15 10:56:39 UTC
svn commit: r1214678 - in /tapestry/tapestry5/trunk/tapestry-spring/src:
main/java/org/apache/tapestry5/internal/spring/
test/java/org/apache/tapestry5/internal/spring/
test/java/org/apache/tapestry5/spring/ test/java/org/example/testapp1/
test/java/or...
Author: drobiazko
Date: Thu Dec 15 09:56:38 2011
New Revision: 1214678
URL: http://svn.apache.org/viewvc?rev=1214678&view=rev
Log:
TAP5-1788: Avoid collision with Service id 'environment' that has already been defined in Spring 3.1
Added:
tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/apache/tapestry5/spring/TapestryExternalSpringContextIntegrationTest.java
tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp1/
tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp1/pages/
tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp1/pages/Index.java
tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp1/services/
tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp1/services/AppModule.java
tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp1/
tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp1/Index.tml
tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp1/WEB-INF/
tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp1/WEB-INF/applicationContext.xml
tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp1/WEB-INF/web.xml
Modified:
tapestry/tapestry5/trunk/tapestry-spring/src/main/java/org/apache/tapestry5/internal/spring/SpringModuleDef.java
tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/apache/tapestry5/internal/spring/SpringModuleDefTest.java
Modified: tapestry/tapestry5/trunk/tapestry-spring/src/main/java/org/apache/tapestry5/internal/spring/SpringModuleDef.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/main/java/org/apache/tapestry5/internal/spring/SpringModuleDef.java?rev=1214678&r1=1214677&r2=1214678&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/main/java/org/apache/tapestry5/internal/spring/SpringModuleDef.java (original)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/main/java/org/apache/tapestry5/internal/spring/SpringModuleDef.java Thu Dec 15 09:56:38 2011
@@ -153,7 +153,7 @@ public class SpringModuleDef implements
private void addServiceDefsForSpringBeans(ApplicationContext context)
{
- for (final String beanName : BeanFactoryUtils.beanNamesIncludingAncestors(context))
+ for (final String beanName : context.getBeanDefinitionNames())
{
String trueName = beanName.startsWith("&") ? beanName.substring(1) : beanName;
Modified: tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/apache/tapestry5/internal/spring/SpringModuleDefTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/apache/tapestry5/internal/spring/SpringModuleDefTest.java?rev=1214678&r1=1214677&r2=1214678&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/apache/tapestry5/internal/spring/SpringModuleDefTest.java (original)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/apache/tapestry5/internal/spring/SpringModuleDefTest.java Thu Dec 15 09:56:38 2011
@@ -41,11 +41,7 @@ public class SpringModuleDefTest extends
train_getInitParameter(servletContext, SpringConstants.USE_EXTERNAL_SPRING_CONTEXT, "true");
train_getAttribute(servletContext, WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE, ac);
-
- // Simulate barney as a factory bean.
-
- expect(ac.getBeanNamesForType(Object.class)).andReturn(new String[] {"fred", "&barney"});
- expect(ac.getParentBeanFactory()).andReturn(null);
+ expect(ac.getBeanDefinitionNames()).andReturn(new String[] {"fred", "&barney"});
replay();
Added: tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/apache/tapestry5/spring/TapestryExternalSpringContextIntegrationTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/apache/tapestry5/spring/TapestryExternalSpringContextIntegrationTest.java?rev=1214678&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/apache/tapestry5/spring/TapestryExternalSpringContextIntegrationTest.java (added)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/apache/tapestry5/spring/TapestryExternalSpringContextIntegrationTest.java Thu Dec 15 09:56:38 2011
@@ -0,0 +1,34 @@
+// Copyright 2011 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.apache.tapestry5.spring;
+
+import org.apache.tapestry5.test.AbstractIntegrationTestSuite;
+import org.testng.annotations.Test;
+
+public class TapestryExternalSpringContextIntegrationTest extends AbstractIntegrationTestSuite
+{
+ public TapestryExternalSpringContextIntegrationTest()
+ {
+ super("src/test/webapp1");
+ }
+
+ @Test
+ public void external_context_integration_test() throws Exception
+ {
+ open(BASE_URL);
+
+ assertTextPresent("Demonstrates Spring Context Configured Externally", "Instantiated via a factory bean.");
+ }
+}
Added: tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp1/pages/Index.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp1/pages/Index.java?rev=1214678&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp1/pages/Index.java (added)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp1/pages/Index.java Thu Dec 15 09:56:38 2011
@@ -0,0 +1,29 @@
+// Copyright 2011 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.testapp1.pages;
+
+import org.apache.tapestry5.ioc.annotations.Inject;
+import org.example.testapp.services.ViaFactory;
+
+public class Index
+{
+ @Inject
+ private ViaFactory viaFactory;
+
+ public String getMessage()
+ {
+ return viaFactory.getMessage();
+ }
+}
Added: tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp1/services/AppModule.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp1/services/AppModule.java?rev=1214678&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp1/services/AppModule.java (added)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/java/org/example/testapp1/services/AppModule.java Thu Dec 15 09:56:38 2011
@@ -0,0 +1,29 @@
+// Copyright 2011 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.testapp1.services;
+
+import org.apache.tapestry5.SymbolConstants;
+import org.apache.tapestry5.ioc.MappedConfiguration;
+import org.apache.tapestry5.ioc.annotations.SubModule;
+import org.apache.tapestry5.spring.SpringModule;
+
+@SubModule(SpringModule.class)
+public class AppModule
+{
+ public static void contributeApplicationDefaults(MappedConfiguration<String, String> configuration)
+ {
+ configuration.add(SymbolConstants.PRODUCTION_MODE, "false");
+ }
+}
Added: tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp1/Index.tml
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp1/Index.tml?rev=1214678&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp1/Index.tml (added)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp1/Index.tml Thu Dec 15 09:56:38 2011
@@ -0,0 +1,12 @@
+<html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd">
+ <head>
+ <title>Start Page</title>
+ </head>
+ <body>
+
+ <h1>Demonstrates Spring Context Configured Externally</h1>
+
+ <div>${message}</div>
+
+ </body>
+</html>
\ No newline at end of file
Added: tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp1/WEB-INF/applicationContext.xml
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp1/WEB-INF/applicationContext.xml?rev=1214678&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp1/WEB-INF/applicationContext.xml (added)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp1/WEB-INF/applicationContext.xml Thu Dec 15 09:56:38 2011
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright 2011 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.
+-->
+
+<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-3.0.xsd
+ http://www.springframework.org/schema/context
+ http://www.springframework.org/schema/context/spring-context-3.0.xsd">
+
+ <context:annotation-config/>
+
+
+ <bean id="fred" class="org.example.testapp.services.FlintstoneImpl"/>
+ <bean id="viaFactory" class="org.example.testapp.services.ViaFactoryFactory"/>
+
+</beans>
+
Added: tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp1/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp1/WEB-INF/web.xml?rev=1214678&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp1/WEB-INF/web.xml (added)
+++ tapestry/tapestry5/trunk/tapestry-spring/src/test/webapp1/WEB-INF/web.xml Thu Dec 15 09:56:38 2011
@@ -0,0 +1,45 @@
+<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
+ "http://java.sun.com/dtd/web-app_2_3.dtd">
+<!--
+ Copyright 2011 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.
+-->
+
+<web-app>
+ <display-name>Tapestry-Spring Integration Test Application</display-name>
+
+ <context-param>
+ <param-name>tapestry.app-package</param-name>
+ <param-value>org.example.testapp1</param-value>
+ </context-param>
+
+ <context-param>
+ <param-name>tapestry.use-external-spring-context</param-name>
+ <param-value>true</param-value>
+ </context-param>
+ <filter>
+ <filter-name>app</filter-name>
+ <filter-class>org.apache.tapestry5.spring.TapestrySpringFilter</filter-class>
+ </filter>
+ <filter-mapping>
+ <filter-name>app</filter-name>
+ <url-pattern>/*</url-pattern>
+ </filter-mapping>
+
+ <listener>
+ <listener-class>
+ org.springframework.web.context.ContextLoaderListener
+ </listener-class>
+ </listener>
+</web-app>