HTTP Status 500 - java.lang.IllegalArgumentException: URLDecoder: Incomplete trailing escape (%) pattern


type Exception report

message java.lang.IllegalArgumentException: URLDecoder: Incomplete trailing escape (%) pattern

description The server encountered an internal error that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: java.lang.IllegalArgumentException: URLDecoder: Incomplete trailing escape (%) pattern
	org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:286)
	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
	org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:124)

root cause

java.lang.IllegalArgumentException: URLDecoder: Incomplete trailing escape (%) pattern
	java.net.URLDecoder.decode(URLDecoder.java:168)
	com.igniteVision.affiliate.tracking.click.util.TargetUrlUtils.getLinkGeneratorTargetUrl(TargetUrlUtils.java:187)
	com.igniteVision.affiliate.tracking.click.manager.RedirectManager.simpleRedirect(RedirectManager.java:112)
	com.igniteVision.affiliate.tracking.click.dispatcher.ClickAction.clickProgram(ClickAction.java:240)
	com.igniteVision.affiliate.tracking.click.dispatcher.ClickAction.execute(ClickAction.java:154)
	com.igniteVision.affiliate.tracking.click.dispatcher.ClickAction$$FastClassByCGLIB$$695c5384.invoke(<generated>)
	net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
	org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:700)
	org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
	org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
	org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
	org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:635)
	com.igniteVision.affiliate.tracking.click.dispatcher.ClickAction$$EnhancerByCGLIB$$87b1f5bb.execute(<generated>)
	org.springframework.web.struts.DelegatingActionProxy.execute(DelegatingActionProxy.java:110)
	org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)
	org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)
	org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
	org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
	org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
	org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
	org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
	org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:124)

note The full stack trace of the root cause is available in the Apache Tomcat/6.0.36 logs.


Apache Tomcat/6.0.36