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 <[EMAIL PROTECTED]> 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: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> >> > > -- 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: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]