struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From panpan <xi...@yahoo.com>
Subject Re: NullPointerException with Struts and Struts2 plus Sitemesh
Date Mon, 04 Jun 2007 14:11:26 GMT

Hi Dave.

I found the problem is because this logon page has been configured
externally for jboss server. The jboss server dosn't know the S2. 

Thanks,
Yan


panpan wrote:
> 
> Hi Dave,
> 
> Thanks for your reply and time.
> In the web.xml, I have both S1 and S2 configuration inside. So S1 and S2
> tag should function together well. I have other page which has mixed s1
> tag nad s2 tag and works very well.
> 
> The reason is like what WW response mentioned: FilterDispatcher is never
> being applied to the request resulting ValueStack being null.
> 
> I'm just wondering why FilterDispatcher.doFilter() is not been called once
> I add S2 tag to this logon.jsp. From my understanding it should since I
> have all configuration in the web.xml. Once I remove the S2 tag, I can see
> FilterDispatcher.doFilter() is been called. 
> 
> Could you please give hint about what might cause not calling
> FilterDispatcher.doFIlter().
> 
> Thanks a lot!
> 
> Below is my web.xml file.
> 
> <?xml version="1.0" encoding="ISO-8859-1"?>
> <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
> http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4">
> 	<display-name>FPI Web Application</display-name>
> 
> 	<context-param>
> 		<param-name>contextConfigLocation</param-name>
> 		<param-value>/WEB-INF/applicationContext*.xml</param-value>
> 	</context-param>
>     
> 	<filter>
> 		<filter-name>dumper</filter-name>
> 	
> <filter-class>com.greenview.fpi.web.util.RequestDumperFilter</filter-class>
> 	</filter>
> 
>    	<filter>
>       <filter-name>downtimeAccessFilter</filter-name>
>      
> <filter-class>com.greenview.fpi.web.security.DowntimeAccessFilter</filter-class>
>    	</filter>
> 
> 	<filter>
>         <filter-name>httpSessionContextIntegration</filter-name>
>        
> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
> 	</filter>
> 
> 	<filter>
> 		<filter-name>userEnabledAuthorizationFilter</filter-name>
>        
> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
>     </filter>
> 
> 	<filter>
> 		<filter-name>pwExpirationAuthorizationFilter</filter-name>
>        
> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
>     </filter>
>    <filter>
> 	    <filter-name>updateEmailAuthorizationFilter</filter-name>
> 	   
> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
>    </filter>
> 	<filter>
> 		<filter-name>unreadMessagesAuthorizationFilter</filter-name>
>        
> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
>     </filter>
> 	
> 	<filter>
>      <filter-name>struts2-cleanup</filter-name>
>     
> <filter-class>org.apache.struts2.dispatcher.ActionContextCleanUp</filter-class>
>     </filter>
> 	
> 	<filter>         
>        <filter-name>sitemesh</filter-name>         
>       
> <filter-class>com.opensymphony.module.sitemesh.filter.PageFilter</filter-class>
    
>     </filter> 
> 
>    <!-- Struts 2 Configuration -->
>     <filter>
>       <filter-name>struts2</filter-name>
>      
> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
>     </filter>
> 
>     <filter-mapping>
>       <filter-name>struts2-cleanup</filter-name>
>       <url-pattern>/*</url-pattern>
>     </filter-mapping>
>     <filter-mapping>         
>       <filter-name>sitemesh</filter-name>         
>       <url-pattern>/*</url-pattern>         
>     </filter-mapping> 
>     <filter-mapping>
>       <filter-name>struts2</filter-name>
>       <url-pattern>/*</url-pattern>
>     </filter-mapping>
> 	<filter-mapping>
> 		<filter-name>dumper</filter-name>
> 		<servlet-name>action</servlet-name>
> 	</filter-mapping>
> 
> 	<filter-mapping>
> 		<filter-name>downtimeAccessFilter</filter-name>
> 		<url-pattern>/restricted/*</url-pattern>
> 	</filter-mapping>
> 	
> 	<filter-mapping>
> 		<filter-name>httpSessionContextIntegration</filter-name>
> 		<url-pattern>/restricted/*</url-pattern>
> 	</filter-mapping>
> 	
> 	<filter-mapping>
> 		<filter-name>userEnabledAuthorizationFilter</filter-name>
> 		<url-pattern>/restricted/*</url-pattern>
> 	</filter-mapping>
> 	
> 	<filter-mapping>
> 		<filter-name>pwExpirationAuthorizationFilter</filter-name>
> 		<url-pattern>/restricted/*</url-pattern>
> 	</filter-mapping>
> 	
> 	<filter-mapping>
> 		<filter-name>updateEmailAuthorizationFilter</filter-name>
> 		<url-pattern>/restricted/*</url-pattern>
> 	</filter-mapping>
> 	
> 	<filter-mapping>
> 		<filter-name>unreadMessagesAuthorizationFilter</filter-name>
> 		<url-pattern>/restricted/*</url-pattern>
> 	</filter-mapping>
>     
> 	<listener>
> 	
> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
> 	</listener>
> 	
> 	<session-config>
> 		<session-timeout>40</session-timeout>
> 	</session-config>
> 	
> 	<!--
> 		To use non XDoclet listeners, create a listeners.xml file that
> 		contains the additional listeners and place it in your
> 		project's merge dir.
> 	-->
> 
> 	<servlet>
> 		<servlet-name>LenderSearchServlet</servlet-name>
> 	
> <servlet-class>com.gtg.pcinsurance.web.lender.ProcessLenderAjaxRequest</servlet-class>
> 	</servlet>
> 
> 	<servlet-mapping>
> 		<servlet-name>LenderSearchServlet</servlet-name>
> 		<url-pattern>/policy/ProcessLenderAjaxRequest</url-pattern>
> 	</servlet-mapping>
> 
> 	<service-ref>
> 		<service-ref-name>service/LenderWebService</service-ref-name>
> 	
> <service-interface>com.gtg.pcinsurance.webservice_client.lender.LenderInquiryWebService</service-interface>
> 		<wsdl-file>WEB-INF/wsdl/LenderInquiryWebService.wsdl</wsdl-file>
> 	
> <jaxrpc-mapping-file>META-INF/lender-mapping-client.xml</jaxrpc-mapping-file>
> 	</service-ref>
> 
> 	<service-ref>
> 		<service-ref-name>service/AcordWebService</service-ref-name>
> 	
> <service-interface>com.greenview.propertyinsurance.webserviceclient.acord.AcordWebService</service-interface>
> 		<wsdl-file>WEB-INF/wsdl/AcordWebService.wsdl</wsdl-file>
> 	
> <jaxrpc-mapping-file>META-INF/acord-mapping-client.xml</jaxrpc-mapping-file>
> 	</service-ref>
> 
> 	<service-ref>
> 		<service-ref-name>service/AddressInquiryWebService</service-ref-name>
> 	
> <service-interface>com.greenview.propertyinsurance.webserviceclient.address.AddressInquiryWebService</service-interface>
> 		<wsdl-file>WEB-INF/wsdl/AddressInquiryWebService.wsdl</wsdl-file>
> 	
> <jaxrpc-mapping-file>META-INF/address-mapping-client.xml</jaxrpc-mapping-file>
> 	</service-ref>
>   <service-ref>
> 	<service-ref-name>service/LocationISOService</service-ref-name>
> 
> <service-interface>com.lmt.iso.location.sei.client.LocationISO</service-interface>
> 	<wsdl-file>WEB-INF/wsdl/LocationISOService.wsdl</wsdl-file>
> 
> <jaxrpc-mapping-file>META-INF/location-iso-mapping-client.xml</jaxrpc-mapping-file>
>   </service-ref>
> 	<!-- Standard Action Servlet Configuration (with debugging) -->
> 	<servlet>
> 		<servlet-name>action</servlet-name>
> 		<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
> 		<init-param>
> 			<param-name>config</param-name>
> 			<param-value>/WEB-INF/struts-config.xml</param-value>
> 		</init-param>
> 		<init-param>
> 			<param-name>debug</param-name>
> 			<param-value>2</param-value>
> 		</init-param>
> 		<init-param>
> 			<param-name>detail</param-name>
> 			<param-value>2</param-value>
> 		</init-param>
> 		<load-on-startup>2</load-on-startup>
> 	</servlet>
> 
> 	<servlet>
> 		<servlet-name>CompanyImage</servlet-name>
> 	
> <servlet-class>com.gtg.pcinsurance.web.imageserv.CompanyImageServlet</servlet-class>
> 	</servlet>
> 	
> 	<servlet-mapping>
> 		<servlet-name>CompanyImage</servlet-name>
> 		<url-pattern>/CompanyImage</url-pattern>
> 	</servlet-mapping>
> 	
> 	<servlet>
> 		<servlet-name>ImageViewer</servlet-name>
> 		<servlet-class>com.fpi.web.policy.ViewImageAttachment</servlet-class>
> 	</servlet>
> 
> 	<servlet>
> 		<servlet-name>StartupServlet</servlet-name>
> 		<servlet-class>com.greenview.fpi.web.util.StartupServlet</servlet-class>
> 		<load-on-startup>2</load-on-startup>
> 	</servlet>
> 
> 	<!-- Standard Action Servlet Mapping -->
> 	<servlet-mapping>
> 		<servlet-name>action</servlet-name>
> 		<url-pattern>*.do</url-pattern>
> 	</servlet-mapping>
> 	<servlet-mapping>
> 		<servlet-name>ImageViewer</servlet-name>
> 		<url-pattern>/restricted/policy/ViewImageAttachment</url-pattern>
> 	</servlet-mapping>
> 
> 	<!--
> 		To specify mime mappings, create a file named mime-mappings.xml, put it
> in your project's mergedir.
> 		Organize mime-mappings.xml following this DTD slice:
> 		
> 		<!ELEMENT mime-mapping (extension, mime-type)>
> 	-->
> 
> 	<!-- The Usual Welcome File List -->
> 	<welcome-file-list>
> 		<welcome-file>index.jsp</welcome-file>
> 	</welcome-file-list>
> 
> 	<error-page>
> 		<error-code>500</error-code>
> 		<location>/error.jsp</location>
> 	</error-page>
> 
> 	<!--
> 		To specify error pages, create a file named error-pages.xml, put it in
> your project's mergedir.
> 		Organize error-pages.xml following this DTD slice:
> 		
> 		<!ELEMENT error-page ((error-code | exception-type), location)>
> 	-->
> 
> 	<!-- JDBC DataSources (java:comp/env/jdbc) -->
> 	<resource-ref>
> 		<description>The default DS</description>
> 		<res-ref-name>jdbc/DefaultDS</res-ref-name>
> 		<res-type>javax.sql.DataSource</res-type>
> 		<res-auth>Container</res-auth>
> 	</resource-ref>
> 
> 	<resource-ref>
> 		<description>SIS Datasource</description>
> 		<res-ref-name>jdbc/DB2DS</res-ref-name>
> 		<res-type>javax.sql.DataSource</res-type>
> 		<res-auth>Container</res-auth>
> 	</resource-ref>
> 
> 	<!-- Our secuity settings -->
> 	<security-constraint>
> 		<web-resource-collection>
> 			<web-resource-name>Restricted</web-resource-name>
> 			<!-- The URLs to protect -->
> 			<!--
> 				<url-pattern>/pages/*</url-pattern>
> 				<url-pattern>/tiles/*</url-pattern>
> 				<url-pattern>/group/*</url-pattern>
> 				<url-pattern>/user/*</url-pattern>
> 				<url-pattern>/quote/*</url-pattern>
> 				<url-pattern>/policy/*</url-pattern>
> 				<url-pattern>/message/*</url-pattern>
> 				<url-pattern>/logon.do</url-pattern>
> 			-->
> 			<url-pattern>/restricted/*</url-pattern>
> 		</web-resource-collection>
> 		<auth-constraint>
> 			<!-- The authorized users -->
> 			<role-name>User</role-name>
> 		</auth-constraint>
> 	</security-constraint>
> 
> 	<login-config>
> 		<auth-method>FORM</auth-method>
> 		<realm-name>EBasic Authentication Area</realm-name>
> 		<form-login-config>
> 		
> <form-login-page>/index.do?method=viewCompanyMessagesLogin</form-login-page>
> 			<form-error-page>/logon-error.jsp</form-error-page>
> 		</form-login-config>
> 	</login-config>
> 
> 	<security-role>
> 		<description>Any user</description>
> 		<role-name>User</role-name>
> 	</security-role>
> 
> </web-app>
> 
> 
> 
> 
> Dave Newton-4 wrote:
>> 
>> --- panpan <xiili@yahoo.com> wrote:
>>> They're served throught S1 and S2 since I'm in the
>>> middle for migration from S1 to S2.
>> 
>> It is not clear to me that an S2 tag would function
>> under an S1 mapping because there won't be a value
>> stack, which is what the stack trace implies.
>> 
>> The WW response claims that if no value stack is found
>> one will be created; I guess you'd need to start
>> looking there, since it seems like one isn't... but
>> would there be any values in it?
>> 
>> d.
>> 
>> 
>> 
>>  
>> ____________________________________________________________________________________
>> Get your own web address.  
>> Have a HUGE year through Yahoo! Small Business.
>> http://smallbusiness.yahoo.com/domains/?p=BESTDEAL
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
>> For additional commands, e-mail: user-help@struts.apache.org
>> 
>> 
>> 
> 
> 

-- 
View this message in context: http://www.nabble.com/NullPointerException-with-Struts-and-Struts2-plus-Sitemesh-tf3853336.html#a10950580
Sent from the Struts - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Mime
View raw message