You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@wicket.apache.org by James Perry <ja...@gmail.com> on 2008/08/01 14:44:54 UTC
Re: WicketSessionFilter Problem: java.lang.IllegalStateException
I tried declaring the filter to invoke the request dispatcher but
still got the same exception. I tested to see if the session exists in
the Struts code and it doesn't; which is extremely fustrating! Anyone
shed any more light?
Cheers for all you help,
James.
On Wed, Jul 30, 2008 at 5:38 PM, Zappaterrini, Larry
<La...@fnis.com> wrote:
> One more suggestion is to declare the filter so that it is invoked when
> request dispatcher methods are called:
>
> <filter-mapping>
> <filter-name>WicketSessionFilter</filter-name>
> <url-pattern>*.do</url-pattern>
> <dispatcher>REQUEST</dispatcher>
> <dispatcher>INCLUDE</dispatcher>
> </filter-mapping>
>
> I'm not sure if that is what is happening in this situation, but it
> might be worth a shot.
>
> -----Original Message-----
> From: James Perry [mailto:james.austin.perry@gmail.com]
> Sent: Wednesday, July 30, 2008 7:31 AM
> To: users@wicket.apache.org
> Subject: Re: WicketSessionFilter Problem:
> java.lang.IllegalStateException
>
> I can't work out why it doesn't work so I decided to subclass the
> WebRequestCycle and access the HTTPSession's attributes via my
> PharmisisSession.
>
> Cheers,
> Jim.
>
> On Wed, Jul 30, 2008 at 11:19 AM, James Perry
> <ja...@gmail.com> wrote:
>> Thanks for the swift reply. That's what I originally had but it didn't
>> work and just tried again to re-confirm. :-)
>>
>> Any other suggestions? I've checkout the source code to see if that
> helps.
>>
>> On Wed, Jul 30, 2008 at 10:42 AM, Martijn Dashorst
>> <ma...@gmail.com> wrote:
>>> I think you have to wrap the wicket session filter around your *.do
>>> mapping, not your new/* mapping.
>>>
>>> Martijn
>>>
>>> On Wed, Jul 30, 2008 at 11:35 AM, James Perry
>>> <ja...@gmail.com> wrote:
>>>> Hello!
>>>>
>>>> I would be grateful for any advice with the below problem I am
>>>> encountering with the WicketSessionFilter.
>>>>
>>>> I managed to convince my colleagues to migrate our
> www.mypharmisis.com
>>>> (a drug ordering system for the Pharmaceutical industry) from Struts
>>>> to Wicket after the success of a greenfield project using Wicket. I
>>>> don't have the resources to migrate all at once so Struts 1 and
> Wicket
>>>> so I have set them up to coexist congruently. However! I am having
>>>> problems sharing necessary state between Struts 1 and Wicket using
> the
>>>> WicketSessionFilter :-(
>>>>
>>>> When my Strut controllers tries to access my WebSession, it throws a
>>>> java.lang.IllegalStateException: you can only locate or create
>>>> sessions in the context of a request cycle. My stack trace is:
>>>>
>>>> org.apache.wicket.Session.findOrCreate(Session.java:206)
>>>> org.apache.wicket.Session.get(Session.java:250)
>>>>
> com.mypharmsisis.pages.session.PharmisisSession.get(PharmisisSession.jav
> a:24)
>>>>
> com.mypharmisis.struts.isis.actions.AbstractEasyAction.displayPage(Abstr
> actEasyAction.java:52)
>>>>
> com.mypharmisis.struts.isis.actions.EasyOrderHomeAction.displayPage(Easy
> OrderHomeAction.java:53)
>>>>
>>>> Here is a snippet of my web.xml:
>>>>
>>>> <!-- Wicket configuration using standard JEE filter -->
>>>> <filter>
>>>> <filter-name>wicket.pharmisis</filter-name>
>>>>
> <filter-class>org.apache.wicket.protocol.http.WicketFilter</filter-class
>>
>>>> <init-param>
>>>> <param-name>applicationClassName</param-name>
>>>>
> <param-value>com.mypharmisis.pages.PharmisisApplication</param-value>
>>>> </init-param>
>>>> </filter>
>>>>
>>>> <filter>
>>>> <filter-name>WicketSessionFilter</filter-name>
>>>>
> <filter-class>org.apache.wicket.protocol.http.servlet.WicketSessionFilte
> r</filter-class>
>>>> <init-param>
>>>> <param-name>filterName</param-name>
>>>> <param-value>wicket.pharmisis</param-value>
>>>> </init-param>
>>>> </filter>
>>>>
>>>> <filter-mapping>
>>>> <filter-name>wicket.pharmisis</filter-name>
>>>> <url-pattern>/secure/new/*</url-pattern>
>>>> </filter-mapping>
>>>>
>>>> <filter-mapping>
>>>> <filter-name>WicketSessionFilter</filter-name>
>>>> <url-pattern>*.do</url-pattern>
>>>> </filter-mapping>
>>>>
>>>> <!-- End of Wicket configuration -->
>>>>
>>>> <context-param>
>>>> <param-name>
>>>> javax.servlet.jsp.jstl.fmt.localizationContext
>>>> </param-name>
>>>> <param-value>
>>>> com.mypharmisis.isis.ApplicationResources
>>>> </param-value>
>>>> </context-param>
>>>>
>>>> <context-param>
>>>> <param-name>crystal_image_uri</param-name>
>>>> <param-value>/isis2/crystalreportviewers11</param-value>
>>>> </context-param>
>>>>
>>>> <distributable/>
>>>> <listener>
>>>>
> <listener-class>com.mypharmisis.struts.isis.framework.IsisContextListene
> r</listener-class>
>>>> </listener>
>>>>
>>>> <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>true</param-value>
>>>> </init-param>
>>>> <init-param>
>>>> <param-name>detail</param-name>
>>>> <param-value>9</param-value>
>>>> </init-param>
>>>> <init-param>
>>>> <param-name>nocache</param-name>
>>>> <param-value>true</param-value>
>>>> </init-param>
>>>> <init-param>
>>>> <param-name>validate</param-name>
>>>> <param-value>true</param-value>
>>>> </init-param>
>>>>
>>>> <load-on-startup>1</load-on-startup>
>>>>
>>>>
>>>> </servlet>
>>>>
>>>> <!-- DWR configuration -->
>>>> <servlet>
>>>> <servlet-name>dwr-invoker</servlet-name>
>>>> <display-name>DWR Servlet</display-name>
>>>>
> <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
>>>> <init-param>
>>>> <param-name>debug</param-name>
>>>> <param-value>true</param-value>
>>>> </init-param>
>>>> </servlet>
>>>>
>>>> <!-- Action Servlet Mappings -->
>>>>
>>>> <servlet-mapping>
>>>> <servlet-name>action</servlet-name>
>>>> <url-pattern>*.do</url-pattern>
>>>> </servlet-mapping>
>>>>
>>>> <servlet-mapping>
>>>> <servlet-name>dwr-invoker</servlet-name>
>>>> <url-pattern>/dwr/*</url-pattern>
>>>> </servlet-mapping>
>>>>
>>>> <!-- The Welcome File List -->
>>>> <welcome-file-list>
>>>> <welcome-file>index.jsp</welcome-file>
>>>> </welcome-file-list>
>>>>
>>>> <error-page>
>>>> <error-code>400</error-code>
>>>> <location>/isisErrorAction.do?code=400</location>
>>>> </error-page>
>>>>
>>>> <error-page>
>>>> <error-code>404</error-code>
>>>> <location>/isisErrorAction.do?code=404</location>
>>>> </error-page>
>>>>
>>>> <error-page>
>>>> <error-code>500</error-code>
>>>> <location>/isisErrorAction.do?code=500</location>
>>>> </error-page>
>>>>
>>>>
>>>> <!-- Start: Struts Tag Library Descriptors -->
>>>> <!--
>>>> <taglib>
>>>> <taglib-uri>struts.jar</taglib-uri>
>>>> <taglib-location>/meta-inf/taglib.tld</taglib-location>
>>>> </taglib>
>>>> -->
>>>>
>>>> <taglib>
>>>> <taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>
>>>> <taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
>>>> </taglib>
>>>> <taglib>
>>>> <taglib-uri>/WEB-INF/struts-html.tld</taglib-uri>
>>>> <taglib-location>/WEB-INF/struts-html.tld</taglib-location>
>>>> </taglib>
>>>> <taglib>
>>>> <taglib-uri>/WEB-INF/struts-logic.tld</taglib-uri>
>>>> <taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
>>>> </taglib>
>>>> <taglib>
>>>> <taglib-uri>/WEB-INF/struts-template.tld</taglib-uri>
>>>>
> <taglib-location>/WEB-INF/struts-template.tld</taglib-location>
>>>> </taglib>
>>>> <taglib>
>>>> <taglib-uri>/WEB-INF/struts-tiles.tld</taglib-uri>
>>>> <taglib-location>/WEB-INF/struts-tiles.tld</taglib-location>
>>>> </taglib>
>>>> <taglib>
>>>> <taglib-uri>/WEB-INF/sslext.tld</taglib-uri>
>>>> <taglib-location>/WEB-INF/sslext.tld</taglib-location>
>>>> </taglib>
>>>>
>>>> <!-- End: Struts Tag Library Descriptors -->
>>>>
>>>> <security-constraint>
>>>> <web-resource-collection>
>>>> <web-resource-name>ActionClasses</web-resource-name>
>>>> <url-pattern>/secure/*</url-pattern>
>>>> <url-pattern>/redirect_home.jsp</url-pattern>
>>>> </web-resource-collection>
>>>> <auth-constraint>
>>>> <role-name>*</role-name>
>>>> </auth-constraint>
>>>> </security-constraint>
>>>>
>>>>
>>>> <login-config>
>>>> <auth-method>FORM</auth-method>
>>>> <realm-name>ISISModule</realm-name>
>>>> <form-login-config>
>>>>
> <form-login-page>/realLogin.do?method=login</form-login-page>
>>>>
> <form-error-page>/realLogin.do?method=loginFailed</form-error-page>
>>>> </form-login-config>
>>>> </login-config>
>>>>
>>>> <security-role>
>>>> <description>A user with no permissions</description>
>>>> <role-name>nobody</role-name>
>>>> </security-role>
>>>>
>>>> <security-role>
>>>> <description>Administrator Web</description>
>>>> <role-name>Admin Web</role-name>
>>>> </security-role>
>>>>
>>>> <security-role>
>>>> <description>Head Office</description>
>>>> <role-name>Head Office</role-name>
>>>> </security-role>
>>>>
>>>>
>>>> </web-app>
>>>>
>>>> Cheers,
>>>> Jim.
>>>>
>>>>
> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
>>>> For additional commands, e-mail: users-help@wicket.apache.org
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Become a Wicket expert, learn from the best:
> http://wicketinaction.com
>>> Apache Wicket 1.3.4 is released
>>> Get it now: http://www.apache.org/dyn/closer.cgi/wicket/1.3.
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
>>> For additional commands, e-mail: users-help@wicket.apache.org
>>>
>>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
> For additional commands, e-mail: users-help@wicket.apache.org
>
> _____________
>
> The information contained in this message is proprietary and/or confidential. If you are not the
> intended recipient, please: (i) delete the message and all copies; (ii) do not disclose,
> distribute or use the message in any manner; and (iii) notify the sender immediately. In addition,
> please be aware that any message addressed to our domain is subject to archiving and review by
> persons other than the intended recipient. Thank you.
> _____________
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
> For additional commands, e-mail: users-help@wicket.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
For additional commands, e-mail: users-help@wicket.apache.org