You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by ksrijith <ks...@gmail.com> on 2012/04/03 09:34:04 UTC

Problem setting request parameters using PageRenderLinkSource

Hi,
I have a select component onchange of whose value I'm returning a PageLink
with request parameters. The id for the select component is "pcat". Please
find the method being called on change of the value.

public Object onValueChangedFromPcat(ItemCategory pcat) {
	this.pcat = pcat;
	this.cat = null;
	this.refreshModels();
	this.refreshCatModels();
	this.refreshGallarymodel();
        // Generating the Link
	Link fwd = pageRenderLS.createPageRenderLink(ItemBrowse.class);
        // Adding the request parameters
	fwd.addParameterValue("pcat", this.pcat);
	fwd.addParameterValue("cat", this.cat);
	fwd.addParameterValue("coll", this.coll);
        // Debug - clean up
	log.debug("URL VALUE" + fwd.toAbsoluteURI());
	return fwd;
}

On doing so the URL on the browser comes out as:
http://localhost:8080/km/store/itembrowse%3Fcat=$N&coll=$N&pcat=20120311143401335000


On the other hand the debug message shows it as:
http://localhost:8080/km/store/itembrowse?cat=$N&coll=$N&pcat=20120311143401335000


If you see closely instead of '?' the hex value of '%3F' is populated which
translates to '??' and I get an exception as:
java.lang.IllegalArgumentException
Input string 'itembrowse?cat=$N&coll=$N&pcat=20120311143401335000' is not
valid; the character '?' at position 11 is not valid.

I haven't faced this issue when the url is generated using the t:pagelink
tag but only when using PareRenderLinkSource to generate the URL. 

Is this a Tapestry issue? Please do advice as to what could have caused this
to happen and if it could be resolved.

Thanks and Regards,
Srijith

-----
--
Don't Forget to Rate
--
View this message in context: http://tapestry.1045711.n5.nabble.com/Problem-setting-request-parameters-using-PageRenderLinkSource-tp5614443p5614443.html
Sent from the Tapestry - User mailing list archive at Nabble.com.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: Problem setting request parameters using PageRenderLinkSource

Posted by ksrijith <ks...@gmail.com>.
No the url that comes out in the debug works perfectly fine.

-----
--
Don't Forget to Rate
--
View this message in context: http://tapestry.1045711.n5.nabble.com/Problem-setting-request-parameters-using-PageRenderLinkSource-tp5614443p5614551.html
Sent from the Tapestry - User mailing list archive at Nabble.com.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: Problem setting request parameters using PageRenderLinkSource

Posted by Chris Mylonas <ch...@opencsta.org>.
out of curiosity, do you still get the exception when you put teh debug URL into your browser address bar?

On 03/04/2012, at 5:34 PM, ksrijith wrote:

> Hi,
> I have a select component onchange of whose value I'm returning a PageLink
> with request parameters. The id for the select component is "pcat". Please
> find the method being called on change of the value.
> 
> public Object onValueChangedFromPcat(ItemCategory pcat) {
> 	this.pcat = pcat;
> 	this.cat = null;
> 	this.refreshModels();
> 	this.refreshCatModels();
> 	this.refreshGallarymodel();
>        // Generating the Link
> 	Link fwd = pageRenderLS.createPageRenderLink(ItemBrowse.class);
>        // Adding the request parameters
> 	fwd.addParameterValue("pcat", this.pcat);
> 	fwd.addParameterValue("cat", this.cat);
> 	fwd.addParameterValue("coll", this.coll);
>        // Debug - clean up
> 	log.debug("URL VALUE" + fwd.toAbsoluteURI());
> 	return fwd;
> }
> 
> On doing so the URL on the browser comes out as:
> http://localhost:8080/km/store/itembrowse%3Fcat=$N&coll=$N&pcat=20120311143401335000
> 
> 
> On the other hand the debug message shows it as:
> http://localhost:8080/km/store/itembrowse?cat=$N&coll=$N&pcat=20120311143401335000
> 
> 
> If you see closely instead of '?' the hex value of '%3F' is populated which
> translates to '??' and I get an exception as:
> java.lang.IllegalArgumentException
> Input string 'itembrowse?cat=$N&coll=$N&pcat=20120311143401335000' is not
> valid; the character '?' at position 11 is not valid.
> 
> I haven't faced this issue when the url is generated using the t:pagelink
> tag but only when using PareRenderLinkSource to generate the URL. 
> 
> Is this a Tapestry issue? Please do advice as to what could have caused this
> to happen and if it could be resolved.
> 
> Thanks and Regards,
> Srijith
> 
> -----
> --
> Don't Forget to Rate
> --
> View this message in context: http://tapestry.1045711.n5.nabble.com/Problem-setting-request-parameters-using-PageRenderLinkSource-tp5614443p5614443.html
> Sent from the Tapestry - User mailing list archive at Nabble.com.
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org