Mmm I have a doubt.. .why tapestry consider that asterisk symbol (*) is
unsafe?? (that symbol is my problem now).  The specification for URLs (RFC
1738 <http://www.rfc-editor.org/rfc/rfc1738.txt>, Dec. '94) says that
asterisk could be used unencoded...



------------------------------------------------------------------
David Germán Canteros


2011/12/22 David Canteros <davidcanteros....@gmail.com>

> Opps! at first glance it will be a problem for me....That url is
> automatically generated by other tool...
> I got back to 5.3 for the moment.
> Thanks Lenny!
>
> David
>
>
> ------------------------------------------------------------------
> David Germán Canteros
>
>
>
> 2011/12/22 Lenny Primak <lpri...@hope.nyc.ny.us>
>
>> This is one of the incompatible changes in 5.3.1.
>> You have to URLencode all parameters form now on.
>> I use the URLEncoder service.
>>
>> On Dec 22, 2011, at 3:05 PM, David Canteros wrote:
>>
>> > Hi guys!
>> > Today I have updated the libraries to tapestry 5.3.1 and my applications
>> > started to throw an unexpected exception *(this doesnt happen with
>> tapestry
>> > 5.3 or earlier*).
>> >
>> > I have a page called "login" that receives a variable called "key" by
>> URL,
>> > which looks like the following example:
>> >
>> > *
>> http://localhost:8080/mytool/login?key=diXmpfiW1uk*1w21wCIi*21312423*w*
>> >
>> > In the onActivate() method I have to catch the value of "key" to do some
>> > work. The code of Login.java is very short:
>> >
>> >   @ActivationRequestParameter
>> >    private String key;
>> >     @Inject
>> >    private Logger log;
>> >
>> >    public Object onActivate() {
>> >        // Some work with "key" value
>> >    }
>> >
>> > The exception happens when I try to access to the above URL, it occurs
>> > before to call onActivate  (i think). The exception is:
>> >
>> > [ERROR] PricetoolModule.PricetoolRequestExceptionHandler Unexpected
>> runtime
>> > exception: Input string 'diXmpfiW1uk*1w21wCIi*21312423*w' is not valid;
>> the
>> > character '*' at position 12 is not valid. (Track ID: 1324576808506)
>> > org.apache.tapestry5.runtime.ComponentEventException:* Input string
>> > 'diXmpfiW1uk*1w21wCIi*21312423*w' is not valid; the character '*' at
>> > position 12 is not valid.*
>> >    at
>> >
>> org.apache.tapestry5.internal.structure.ComponentPageElementImpl.processEventTriggering(ComponentPageElementImpl.java:1130)
>> >    at
>> >
>> org.apache.tapestry5.internal.structure.ComponentPageElementImpl.access$3200(ComponentPageElementImpl.java:61)
>> >    at
>> >
>> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1051)
>> > (and continues..)
>> >
>> > I think is a problem when tapestry tries to handle the URL to catch the
>> > value of  "key" ... someone have an idea of the problem?? This not
>> happens
>> > with tap 5.3...
>> > Regards!
>> > David
>> >
>> > Complete exception:
>> >
>> > [ERROR] PricetoolModule.PricetoolRequestExceptionHandler Unexpected
>> runtime
>> > exception: Input string 'diXmpfiW1uk*1w21wCIi*21312423*w' is not valid;
>> the
>> > character '*' at position 12 is not valid. (Track ID: 1324576808506)
>> > org.apache.tapestry5.runtime.ComponentEventException: Input string
>> > 'diXmpfiW1uk*1w21wCIi*21312423*w' is not valid; the character '*' at
>> > position 12 is not valid.
>> >    at
>> >
>> org.apache.tapestry5.internal.structure.ComponentPageElementImpl.processEventTriggering(ComponentPageElementImpl.java:1130)
>> >    at
>> >
>> org.apache.tapestry5.internal.structure.ComponentPageElementImpl.access$3200(ComponentPageElementImpl.java:61)
>> >    at
>> >
>> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1051)
>> >    at
>> >
>> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1048)
>> >    at
>> >
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>> >    at
>> >
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>> >    at
>> >
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>> >    at
>> >
>> org.apache.tapestry5.internal.structure.ComponentPageElementResourcesImpl.invoke(ComponentPageElementResourcesImpl.java:146)
>> >    at
>> >
>> org.apache.tapestry5.internal.structure.ComponentPageElementImpl.triggerContextEvent(ComponentPageElementImpl.java:1047)
>> >    at
>> >
>> org.apache.tapestry5.internal.structure.InternalComponentResourcesImpl.triggerContextEvent(InternalComponentResourcesImpl.java:302)
>> >    at
>> >
>> org.apache.tapestry5.internal.services.PageActivatorImpl.activatePage(PageActivatorImpl.java:34)
>> >    at $PageActivator_7f2c9a23350.activatePage(Unknown Source)
>> >    at
>> >
>> org.apache.tapestry5.internal.services.PageRenderRequestHandlerImpl.handle(PageRenderRequestHandlerImpl.java:57)
>> >    at
>> >
>> org.apache.tapestry5.services.TapestryModule$37.handle(TapestryModule.java:2207)
>> >    at $PageRenderRequestHandler_7f2c9a23351.handle(Unknown Source)
>> >    at $PageRenderRequestHandler_7f2c9a2334a.handle(Unknown Source)
>> >    at
>> >
>> org.apache.tapestry5.internal.services.ComponentRequestHandlerTerminator.handlePageRender(ComponentRequestHandlerTerminator.java:48)
>> >    at
>> >
>> org.apache.tapestry5.services.InitializeActivePageName.handlePageRender(InitializeActivePageName.java:47)
>> >    at $ComponentRequestHandler_7f2c9a2334b.handlePageRender(Unknown
>> Source)
>> >    at
>> >
>> org.tynamo.security.SecurityComponentRequestFilter.handlePageRender(SecurityComponentRequestFilter.java:50)
>> >    at $ComponentRequestFilter_7f2c9a23348.handlePageRender(Unknown
>> Source)
>> >    at $ComponentRequestHandler_7f2c9a2334b.handlePageRender(Unknown
>> Source)
>> >    at $ComponentRequestHandler_7f2c9a23311.handlePageRender(Unknown
>> Source)
>> >    at
>> >
>> org.apache.tapestry5.internal.services.PageRenderDispatcher.dispatch(PageRenderDispatcher.java:45)
>> >    at $Dispatcher_7f2c9a23314.dispatch(Unknown Source)
>> >    at $Dispatcher_7f2c9a2330e.dispatch(Unknown Source)
>> >    at
>> >
>> org.apache.tapestry5.services.TapestryModule$RequestHandlerTerminator.service(TapestryModule.java:302)
>> >    at
>> >
>> org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26)
>> >    at $RequestHandler_7f2c9a2330f.service(Unknown Source)
>> >    at
>> >
>> org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:902)
>> >    at $RequestHandler_7f2c9a2330f.service(Unknown Source)
>> >    at
>> >
>> org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:892)
>> >    at $RequestHandler_7f2c9a2330f.service(Unknown Source)
>> >    at
>> >
>> org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
>> >    at $RequestHandler_7f2c9a2330f.service(Unknown Source)
>> >    at
>> >
>> ultimate.pricetool.services.PricetoolModule$1.service(PricetoolModule.java:433)
>> >    at $RequestFilter_7f2c9a2330b.service(Unknown Source)
>> >    at $RequestHandler_7f2c9a2330f.service(Unknown Source)
>> >    at $RequestHandler_7f2c9a23300.service(Unknown Source)
>> >    at
>> >
>> org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:253)
>> >    at
>> >
>> org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
>> >    at $HttpServletRequestHandler_7f2c9a23302.service(Unknown Source)
>> >    at
>> >
>> org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:44)
>> >    at $HttpServletRequestHandler_7f2c9a23302.service(Unknown Source)
>> >    at
>> >
>> org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
>> >    at $HttpServletRequestFilter_7f2c9a232fe.service(Unknown Source)
>> >    at $HttpServletRequestHandler_7f2c9a23302.service(Unknown Source)
>> >    at
>> >
>> org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule.java:852)
>> >    at $HttpServletRequestHandler_7f2c9a23302.service(Unknown Source)
>> >    at
>> >
>> org.tynamo.security.services.impl.SecurityConfiguration$2.call(SecurityConfiguration.java:104)
>> >    at
>> >
>> org.tynamo.security.services.impl.SecurityConfiguration$2.call(SecurityConfiguration.java:102)
>> >    at
>> >
>> org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
>> >    at
>> >
>> org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
>> >    at
>> >
>> org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:376)
>> >    at
>> >
>> org.tynamo.security.services.impl.SecurityConfiguration.service(SecurityConfiguration.java:102)
>> >    at $HttpServletRequestFilter_7f2c9a232fd.service(Unknown Source)
>> >    at $HttpServletRequestHandler_7f2c9a23302.service(Unknown Source)
>> >    at $HttpServletRequestHandler_7f2c9a232fb.service(Unknown Source)
>> >    at
>> org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:171)
>> >    at
>> >
>> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1323)
>> >    at
>> >
>> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:476)
>> >    at
>> >
>> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
>> >    at
>> >
>> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:517)
>> >    at
>> >
>> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:225)
>> >    at
>> >
>> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:937)
>> >    at
>> >
>> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:406)
>> >    at
>> >
>> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:183)
>> >    at
>> >
>> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:871)
>> >    at
>> >
>> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
>> >    at
>> >
>> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:247)
>> >    at
>> >
>> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
>> >    at
>> >
>> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110)
>> >    at org.eclipse.jetty.server.Server.handle(Server.java:346)
>> >    at
>> >
>> org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:589)
>> >    at
>> >
>> org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1048)
>> >    at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:601)
>> >    at
>> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:214)
>> >    at
>> > org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:411)
>> >    at
>> >
>> org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:535)
>> >    at
>> >
>> org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40)
>> >    at
>> >
>> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:529)
>> >    at java.lang.Thread.run(Thread.java:662)
>> > Caused by: org.apache.tapestry5.ioc.internal.OperationException: Input
>> > string 'diXmpfiW1uk*1w21wCIi*21312423*w' is not valid; the character
>> '*' at
>> > position 12 is not valid.
>> >    at
>> >
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:121)
>> >    at
>> >
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:88)
>> >    at
>> >
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>> >    at
>> >
>> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>> >    at
>> >
>> org.apache.tapestry5.internal.services.ComponentInstantiatorSourceImpl$TransformationSupportImpl$1.advise(ComponentInstantiatorSourceImpl.java:439)
>> >    at
>> >
>> org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:86)
>> >    at ultimate.pricetool.pages.Login.dispatchComponentEvent(Login.java)
>> >    at
>> >
>> org.apache.tapestry5.internal.structure.ComponentPageElementImpl.dispatchEvent(ComponentPageElementImpl.java:923)
>> >    at
>> >
>> org.apache.tapestry5.internal.structure.ComponentPageElementImpl.processEventTriggering(ComponentPageElementImpl.java:1106)
>> >    ... 81 more
>> > Caused by: java.lang.IllegalArgumentException: Input string
>> > 'diXmpfiW1uk*1w21wCIi*21312423*w' is not valid; the character '*' at
>> > position 12 is not valid.
>> >    at
>> >
>> org.apache.tapestry5.internal.services.URLEncoderImpl.decode(URLEncoderImpl.java:144)
>> >    at $URLEncoder_7f2c9a23336.decode(Unknown Source)
>> >    at
>> >
>> org.apache.tapestry5.internal.transform.ActivationRequestParameterWorker$2.handleEvent(ActivationRequestParameterWorker.java:128)
>> >    at
>> >
>> org.apache.tapestry5.internal.services.ComponentInstantiatorSourceImpl$TransformationSupportImpl$1$1.invoke(ComponentInstantiatorSourceImpl.java:443)
>> >    at
>> >
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>> >    ... 88 more
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
>> For additional commands, e-mail: users-h...@tapestry.apache.org
>>
>>
>

Reply via email to