tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christopher Schultz <ch...@christopherschultz.net>
Subject Re: Strange JSP compilation issues in tomcat 7 and 8
Date Mon, 06 Jul 2015 15:18:15 GMT
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Paul,

On 7/6/15 9:20 AM, paul@kuruma.co.uk wrote:
> I was really hoping that there would be something tomcat related in
> the WEB-INF\lib folder but nothing, they are all marked as provided
> in the pom file.
> 
> There was a mistake in my original post, in tomcat 8.0.23 my
> application does not work with jdk's 1.7.0_09 or 1.8.0_11 so
> basically it doesnt work at all in 8.023 with or without the ## in
> the war file name.
> 
> It seems like tomcat is just unable to compile jsp files in this
> version.
> 
> Is there anything else I can check or do? I have seen some people
> say they edited the conf/web.xml for the jsp servlet entry, I tried
> setting the params to 1.7 for compilerSourceVM and compilerTargetVM
> but this had no effect.
> 
> I am pretty stuck as the tomcat page 
> http://tomcat.apache.org/whichversion.html seems to imply
> everything is compatible??

I've seen problems with libraries that use URIs to load files instead
of using the ClassLoader. The problem is that the WAR filename
contains "#" which is an illegal character in a URL. Due to various
escaping, unescaping, re-escaping, etc. it's possible that a certain
combination can result in a file that can't be loaded due to the
illegal character issue.

Can you confirm that your web application otherwise works properly
without the "##" in the filename?

- -chris

> On Mon, July 6, 2015 1:44 am, Felix Schumacher wrote:
> 
>> Am 4. Juli 2015 11:04:13 MESZ, schrieb paul@kuruma.co.uk:
>> 
>>> I am working on a spring\tiles application which I have been
>>> deploying to tomcat7 (7.0.32 and 7.0.53) and tomcat8 (8.2.0.23)
>>> and my war files are built with maven using jdk1.7.0_09.
>>> 
>>> In my pom file I declare the final name using the ## syntax
>>> that I was told before on this mailing list would ensure that
>>> when deploying to tomcat that I would not get the version name
>>> as part of the context and so could just use the web app name
>>> in the url and in the past this has worked ok for me.
>>> 
>>> <finalName>${finalName}##${project.version}</finalName>
>>> 
>>> 
>>> So my war file build with a name like mywebapp##0.0.0.war, I
>>> deploy this with tomcat manager or manually and it deploys ok,
>>> no errors I can see on deployment.
>>> 
>>> However when I try to access any pages I get jsp compilation
>>> issues, in both versions of tomcat 7 I get this error:
>>> 
>>> org.springframework.web.util.NestedServletException: Request
>>> processing failed; nested exception is 
>>> org.apache.tiles.request.render.CannotRenderException:
>>> ServletException including path '/WEB-INF/tiles/layout.jsp'.
>>> 
>>> org.apache.jasper.JasperException: Unable to compile class for
>>> JSP:
>>> 
>>> 
>>> An error occurred at line: 1 in the generated java file The
>>> type java.util.Map$Entry cannot be resolved. It is indirectly 
>>> referenced from required .class files
>> 
>> I have seen similar errors on maven based projects, when the jsp
>> api lib was put into WEB-INF/lib/. Check your libs in that
>> location. Remove any servlet specific libs from there.
>> 
>> Regards, Felix
>> 
>>> 
>>> And when deploying to tomcat8 I get this error:
>>> 
>>> 
>>> javax.servlet.ServletException: Could not resolve view with
>>> name 'base/dashboard/view' in servlet with name 'appServlet'
>>> 
>>> 
>>> If I deploy the war files without the ## in the name so just
>>> like mywebapp.war then they deploy and run fine in both
>>> versions of tomcat7 and tomcat8.
>>> 
>>> Does anybody have any idea what could be the problem?
>>> 
>>> 
>>> I have in the past deployed war files with the ## in the web
>>> app name without any issues and whilst they didnt use Spring
>>> and Apache Tiles they did use a lot of jsp's and this didnt
>>> cause any issues.
>>> 
>>> I should also point out that the web app with the problems
>>> contains all the display\front end but the back end which has
>>> no jsps or tiles but is still a spring web app but only
>>> provides rest apis for the web front end to call does not have
>>> any issues with the ## in the war file name and I have not had
>>> to change this wars name at all whilst doing this testing.
>>> 
>>> Its odd in that I can start tomcat with the ## and get an
>>> error, stop it, clean down the work directory and then remove
>>> rhe ## from the war name and restart tomcat and it works now.
>>> 
>>> 
>>> --------------------------------------------------------------------
- -
>>>
>>> 
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
>>> For additional commands, e-mail: users-help@tomcat.apache.org
>>> 
>> 
>> 
>> ---------------------------------------------------------------------
>>
>> 
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
>> For additional commands, e-mail: users-help@tomcat.apache.org
> 
> 
> 
> ---------------------------------------------------------------------
>
> 
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
> 
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - http://gpgtools.org

iQIcBAEBCAAGBQJVmpw3AAoJEBzwKT+lPKRYx+gP/A1KHF5ZeKPnOvJ+iKqc+J5A
/NGe9UAm62zM9ZY/VVEAOk2Eh/3bnAKeEkgwKyJQSN9+5L1TimeTopVKX5F0qeYL
I4oK0T/V2x3L8rVuXJ2GeHjOhulDTXbCujyq13nBxAk1HC5Z1C+KFiKN2bQeHMRl
daBOg1xhNtBSZq6bGE8LsLyTQNqoSGj/SFgDSUTtvLot6oLNjf9iVLV8wBTAm5SC
hqc9AuKIM3DhfE+oHCZtzUNBlsV6HPXOZ6MHas79hne0I2384Z4g5wWA5CL2KKUf
UehaCO3Wjk7+RUyl1/g5Fhni1kjYZ+IfqaVk7UrIWuVZDmsb8qs+LFpNRThXhnx3
XPloelDjpuafYyjAvuVIyxV7+LsztPAI9DCo4aRFtvUXzfdQ6VaOqhIgm1wXB/50
G7ZF3E5dmJ9C+XiUBvswr6V66IWTPwb+XFDeB9/i/laEzaCEzAZAQ3qwJKpduBQ6
fTOGF/qlZZkX5AlqJ7ZB7cC7D40Fl8fDuaikDTjAkSsoW+Jc5tFMFGJ4RAwxNf9q
ZH8fJfPllWin/uHyWDo0GopZsl7JdVJMsFn4dgMsECU9qjYFW4nHGQ+W3pGtb9yk
YQa9v0Oz2g4CUkhKXiVXLxcXoNcb7U8wKlqOE4EXZJEr0jpaay/9/lJns4m+28k0
8WNsJIrLnLqEfVi00mH/
=JBSr
-----END PGP SIGNATURE-----

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


Mime
View raw message