I'm not sure, there seems to be some missing information. I find it hard to
believe that having a single @InjectState method alone would cause that
error.
Where are you messing with the data that was injected?
On 5/1/07, Joe Chen <[EMAIL PROTECTED]> wrote:
Some more information about this issue - I downgraded to 4.1.1 and the
problem went away, so it seems like this is an issue that was introduced
in
4.1.2.
Should I file a bug on this?
Joe
On 5/1/07, Joe Chen <[EMAIL PROTECTED]> wrote:
>
> Hi,
> I'm seeing some strange errors with the @InjectState after upgrading
from
> T4.0 to T4.1.2. The problem shows up only in Tomcat 5.5.
>
> In our code, we have a component that declares:
>
> @InjectState("playerInfo")
> public abstract HashMap getPlayerInfo();
>
> The code was working fine for months under T4.0.x. Recently we decided
to
> migrate to T4.1.2, and it works under Jetty (using Jetty Eclipse
plugin).
> However, as soon as I deploy to Tomcat 5.5 and try to run the
application,
> I get the following error:
>
> Caused by: java.lang.IllegalStateException: Cannot create a session
after the response has been committed
> at
> org.apache.catalina.connector.Request.doGetSession(Request.java:2214)
> at org.apache.catalina.connector.Request.getSession(Request.java
:2024)
> at org.apache.catalina.connector.RequestFacade.getSession(
RequestFacade.java
> :831)
> at org.apache.tapestry.web.ServletWebRequest.getSession(
ServletWebRequest.java:82)
> at
$WebRequest_1124940e33a.getSession($WebRequest_1124940e33a.java)
> at
$WebRequest_1124940e2ce.getSession($WebRequest_1124940e2ce.java)
>
> at org.apache.tapestry.engine.state.SessionScopeManager.getSession
(SessionScopeManager.java:50)
> at org.apache.tapestry.engine.state.SessionScopeManager.get(
SessionScopeManager.java:65)
> at
$StateObjectPersistenceManager_1124940e469.get($StateObjectPersistenceManager_1124940e469.java)
>
> at org.apache.tapestry.engine.state.StateObjectManagerImpl.get(
StateObjectManagerImpl.java:51)
> at
org.apache.tapestry.engine.state.ApplicationStateManagerImpl.get(
ApplicationStateManagerImpl.java:60)
> at
$ApplicationStateManager_1124940e2ea.get($ApplicationStateManager_1124940e2ea.java)
>
> at
$ApplicationStateManager_1124940e2eb.get($ApplicationStateManager_1124940e2eb.java)
> at $SkinTiles_9.getPlayerInfo($SkinTiles_9.java)
>
>
> Did the InjectState code somehow change between 4.0.x and 4.1 ? Any
ideas
> on how to fix the problem?
>
> Thanks,
> Joe
>
--
Jesse Kuhnert
Tapestry/Dojo team member/developer
Open source based consulting work centered around
dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com