Hi,

as written in my last post, the removed cast brings the next problem: the 
IllegalStateException (StripesRequestWrapper.java:72) is
thrown. I guess the forward is the problem. I guess if I would so such a 
forward anywhere else in my application I would encounter
the same problem. What are you mapping the dispatcher sevlet against?

What do you mean with "response has been commited"?

I would go for removing the internal forward, I think it brings less problems 
with it. What speaks against this?

cheers

Kai


--- Original Nachricht ---
Absender: Ben Gunter
Datum: 17.06.2007 18:19
> I removed that cast since it wasn't necessary, but I guess that just 
> exposed a different problem for you. I've tested locally with a *.htm 
> mapping using the same UrlBinding you gave, and it works with no problem 
> for me.
> 
> The way this thing works is the parameters that are embedded in the 
> request URI are detected by StripesFilter, and the request is forwarded 
> internally to the same URI with the embedded parameters appended as a 
> query string. For example, given @UrlBinding("/foo/{id}/bar.html"), a 
> request to /foo/123/bar.html would be rewritten and forwarded to 
> /foo/123/bar.html?id=123.
> 
> If the response has been committed before this forward is attempted, 
> then an IllegalStateException is thrown. Is this possibly what is 
> happening in your case?
> 
> I've been mulling the idea of not using an internal forward at all and 
> just adding to StripesRequestWrapper the ability to add new parameters 
> that would appear as if they were present in the original request. 
> Anybody have any thoughts on that?
> 
> -Ben
> 
> Kai Grabfelder wrote:
>> hm, if I change the line, throwing the exception to HttpServletRequest I'm 
>> getting an IllegalStateException by
>> StripesRequestWrapper.java:72
>>
>> It this somehow related to my settings in web.xml?
>>
>> I currently do a mapping of *.htm to the StripesDispatcher and a mapping of 
>> *.jsp to the StripesFilter...
>>
>> cheers
>>
>> Kai
>>
>>
>> --- Original Nachricht ---
>> Absender: Kai Grabfelder
>> Datum: 17.06.2007 13:01
>>   
>>> Hi Ben,
>>>
>>> I just tried the current trunk code and I'm getting a ClassCastException 
>>> after calling an action bean with the following URL mapping:
>>>
>>> @UrlBinding(value = "/community/mitglieder/{id}/show.htm")
>>>
>>> The following url was generated by the link tag: 
>>> /community/mitglieder/22/show.htm - now if I open this url in the browser 
>>> the
>>> following exception is thrown...
>>>
>>> java.lang.ClassCastException: org.mortbay.jetty.Request
>>>  at 
>>> net.sourceforge.stripes.controller.AnnotatedClassActionResolver.getActionBean(AnnotatedClassActionResolver.java:245)
>>>  at 
>>> net.sourceforge.stripes.controller.DispatcherHelper$1.intercept(DispatcherHelper.java:102)
>>>  at 
>>> net.sourceforge.stripes.controller.ExecutionContext.proceed(ExecutionContext.java:157)
>>>  at 
>>> net.sourceforge.stripes.controller.BeforeAfterMethodInterceptor.intercept(BeforeAfterMethodInterceptor.java:111)
>>>  at 
>>> net.sourceforge.stripes.controller.ExecutionContext.proceed(ExecutionContext.java:154)
>>>  at 
>>> net.sourceforge.stripes.integration.spring.SpringInterceptor.intercept(SpringInterceptor.java:64)
>>>  at 
>>> net.sourceforge.stripes.controller.ExecutionContext.proceed(ExecutionContext.java:154)
>>>  at 
>>> net.sourceforge.stripes.security.controller.SecurityInterceptor.intercept(SecurityInterceptor.java:80)
>>>  at 
>>> net.sourceforge.stripes.controller.ExecutionContext.proceed(ExecutionContext.java:154)
>>>  at 
>>> de.kinokai.web.interceptor.AutoLoginInterceptor.intercept(AutoLoginInterceptor.java:92)
>>>  at 
>>> net.sourceforge.stripes.controller.ExecutionContext.proceed(ExecutionContext.java:154)
>>>  at 
>>> net.sourceforge.stripes.controller.ExecutionContext.wrap(ExecutionContext.java:73)
>>>  at 
>>> net.sourceforge.stripes.controller.DispatcherHelper.resolveActionBean(DispatcherHelper.java:98)
>>>  at 
>>> net.sourceforge.stripes.controller.DispatcherServlet.resolveActionBean(DispatcherServlet.java:206)
>>>  at 
>>> net.sourceforge.stripes.controller.DispatcherServlet.doPost(DispatcherServlet.java:140)
>>> ...
>>>
>>> Any idea?
>>>
>>> cheers
>>>
>>> Kai
>>>
>>>
>>> --- Original Nachricht ---
>>> Absender: Ben Gunter (JIRA)
>>> Datum: 13.06.2007 16:02
>>>     
>>>>     [ http://mc4j.org/jira/browse/STS-262?page=comments#action_10727 ] 
>>>>             
>>>> Ben Gunter commented on STS-262:
>>>> --------------------------------
>>>>
>>>> I forgot to mention that parameters can take default values. If the 
>>>> parameter is not present in the URI, then its default value will be 
>>>> appended to the query string on forward. Here's an example.
>>>>
>>>> @UrlBinding("/action/map/{country=US}")
>>>>
>>>> So if the URI is /action/map/CA you'll get a map of Canada, but if it's 
>>>> just /action/map then you'll get a map of the default country, in this 
>>>> case US.
>>>>
>>>> Escaping is also supported with backslashes in case you want to embed 
>>>> something weird:
>>>>
>>>> @UrlBinding("/action/this\\{is\\}weird")
>>>>
>>>>       
>>>>> Friendly URL support
>>>>> --------------------
>>>>>
>>>>>                 Key: STS-262
>>>>>                 URL: http://mc4j.org/jira/browse/STS-262
>>>>>             Project: Stripes
>>>>>          Issue Type: New Feature
>>>>>          Components: ActionBean Dispatching
>>>>>            Reporter: Tim Fennell
>>>>>         Assigned To: Ben Gunter
>>>>>             Fix For: Release 1.5
>>>>>
>>>>>         Attachments: cleanurls-patches.zip, cleanurls-src-01182007.zip
>>>>>
>>>>>
>>>>> One thing that comes up frequently is support for friendly URLs, e.g.:
>>>>>   /blog/2006/08/22
>>>>>   /user/6282/edit
>>>>> and so on.  While it's possible to acheive URLs like this using 3rd party 
>>>>> tools like UrlRewriteFilter it would be nice if they were built directly 
>>>>> into stripes because then all URL information could be kept in a single 
>>>>> place for each class.
>>>>> I'm envisaging an annotation something like this:
>>>>>     @UrlInfo("/{year}/{month}/{day}")
>>>>>     @UrlInfo("/{userId}/{event}")
>>>>> that would inform Stripes how to map the extra pieces of information 
>>>>> encoded in the URL.
>>>>> Optionally this could also be specified with the existing UrlBinding 
>>>>> annotations, e.g.
>>>>>     @UrlBinding("/blog/{year}/{month}/{day}")
>>>>> If done right, the stripes url and link tags could also take advantage of 
>>>>> this information to put certain parameters into the URL instead of a 
>>>>> parameter string.
>>>>> I'm very open to hearing alternative ideas around how to specify this, 
>>>>> and other functionality that would be desirable.
>>>>>         
>>> -------------------------------------------------------------------------
>>> This SF.net email is sponsored by DB2 Express
>>> Download DB2 Express C - the FREE version of DB2 express and take
>>> control of your XML. No limits. Just data. Click to get it now.
>>> http://sourceforge.net/powerbar/db2/
>>> _______________________________________________
>>> Stripes-development mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/stripes-development
>>>
>>>     
>>
>>
>> -------------------------------------------------------------------------
>> This SF.net email is sponsored by DB2 Express
>> Download DB2 Express C - the FREE version of DB2 express and take
>> control of your XML. No limits. Just data. Click to get it now.
>> http://sourceforge.net/powerbar/db2/
>> _______________________________________________
>> Stripes-development mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/stripes-development
>>   
> 
> 
> 
> ------------------------------------------------------------------------
> 
> -------------------------------------------------------------------------
> This SF.net email is sponsored by DB2 Express
> Download DB2 Express C - the FREE version of DB2 express and take
> control of your XML. No limits. Just data. Click to get it now.
> http://sourceforge.net/powerbar/db2/
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Stripes-development mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/stripes-development


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Stripes-development mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/stripes-development

Reply via email to