I tried using the wildcard instructions.  The project compiles and the server 
starts, so I assume that the definitions are available.  However, Struts2 
doesn't seem to see them.  This is the case whether I use "classpath:" or not.  
When I run in debug mode, I see that the action class is returning "SUCCESS", 
but then throwing an exception in the interceptor when trying to find its next 
destination (which is defined as a tiles destination.)

Here is my configuration... 
        <!--====================================-->
        <!-- Context Parameters                 -->
        <!--====================================-->
        <context-param>
            
<param-name>org.apache.tiles.context.AbstractTilesApplicationContextFactory</param-name>
            <param-value>
              
org.apache.tiles.servlet.context.wildcard.WildcardServletTilesApplicationContextFactory
            </param-value>
        </context-param>
        <context-param>
                
<param-name>org.apache.tiles.definition.DefinitionsFactory.DEFINITIONS_CONFIG</param-name>
                <param-value>
                        /WEB-INF/classes/config/tiles/tiles-common-default.xml, 
/WEB-INF/classes/config/tiles/tiles-ar-security.xml, 
/WEB-INF/classes/config/tiles/tiles-ar-search.xml
        </param-value>
        </context-param>

        <!--====================================-->
        <!-- Filters/Mappings                   -->
        <!--====================================-->
    <filter>
        <filter-name>struts2</filter-name>
        
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>*</url-pattern>
    </filter-mapping>
    
        <!--====================================-->
        <!-- Listeners                          -->
        <!--====================================-->
    <listener>
                
<listener-class>org.apache.tiles.web.startup.TilesListener</listener-class>
        </listener>

        <!--===================================-->
        <!-- DEPENDENCIES FROM IVY.XML         -->
        <!--===================================-->

                <dependency org="org.apache.struts" name="struts2-core" 
rev="2.1.8"/>
                <dependency org="org.apache.struts" name="struts2-tiles-plugin" 
rev="2.1.8"/>
                
                <dependency org="org.springframework" name="spring-web" 
rev="2.5.6.SEC01">
                        <exclude org="javax.jms" name="jms" ext="jar"/>
                        <exclude org="com.sun.jdmk" name="jmxtools" ext="jar"/>
                        <exclude org="com.sun.jmx" name="jmxri" ext="jar"/>
                        <exclude org="javax.faces" name="jsf-api" ext="jar"/>
                </dependency>
                
                <dependency org="jstl" name="jstl" rev="1.1.2"/>


As far as the war goes, there is another webapp that serves up common 
components which I could give other apps access to.  I was thinking maybe I 
could access the configuration as a uri from that webapp.

I'm going to try using Ant to pull common components into the application from 
a template project (pre-deployment) and then have tiles/struts reference them 
locally.  That should work.

Regards,
Brian

-----Original Message-----
From: Antonio Petrelli [mailto:[email protected]] 
Sent: Friday, October 23, 2009 1:35 AM
To: [email protected]
Subject: Re: Tiles Definition Files From a Jar or War

2009/10/22 Brian Stewart <[email protected]>:
> What is the proper way to load a Tiles2 definitions file from a jar file or 
> another war file on the classpath?

The easiest way to load a definition file from the classpath is using this:
http://tiles.apache.org/2.1/framework/tutorial/wildcard-configuration.html

However I don't understand by "loading definitions from another war
file on the classpath". Do you want to reference an external file?

Antonio<HTML><BODY><P><hr size=1></P>
<P><STRONG>This message is confidential, intended only for the named recipient 
and may contain information that is privileged or exempt from disclosure under 
applicable law.  If you are not the intended recipient, you are notified that 
the dissemination, distribution or copying of this message is strictly 
prohibited.  If you receive this message in error, or are not the named 
recipient, please notify the sender at the email address listed 
above.</STRONG></P></BODY></HTML>

Reply via email to