Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Remote Application Platform (RAP) » Help System under 3.4(Problem to run help system under 3.4)
Help System under 3.4 [message #1781944] Wed, 14 February 2018 21:51 Go to next message
Sebastian von Klinski is currently offline Sebastian von KlinskiFriend
Messages: 12
Registered: October 2012
Junior Member
Hi everybody,

I cannot use the help system under RAP 3.4 due to the incompatibility of the javax.servlet library.

The help system needs javax.servlet 3.0 oder earlier. I used to link javax.servlet.jar 2.4. to the bundle list.

However, RAP 3.4. needs javax.servlet 3.1 or higher.

If I start the RAP application with javax.servlet 3.0 the whole web app cannot be started due to the missing class javax/servlet/http/HttpSessionIdListener. This is a new class in 3.1 that RAP 3.4 apparently needs.

If, however, I add javax.servlet 3.1 to the runtime environment, the help system does not work due to incopatibilities with the other libraries. One of the error messages is: org.apache.jasper.JasperException: java.lang.ClassNotFoundException: org.apache.jsp.index_jsp

If I add both libraries of javax.servlet to the bundle list, the bundle rg.eclipse.equinox.jsp.jasper.registry gets problems, because it resolves both javax.servlet libraries via different ways.

Can anybody give me hints how to run the help system under RAP 3.4?

Thanks for your help in advance!

Sebastian
Re: Help System under 3.4 [message #1781955 is a reply to message #1781944] Thu, 15 February 2018 07:45 Go to previous messageGo to next message
Ivan Furnadjiev is currently offline Ivan FurnadjievFriend
Messages: 2426
Registered: July 2009
Location: Sofia, Bulgaria
Senior Member
Hi,
RAP runtime bundles (org.eclipse.rap.rwt.osgi, org.eclipse.rap.rwt) do not require javax.servlet 3.1. In the MANIFEST.MF of these bundles we have:
javax.servlet;version="[2.5.0,3.2.0)"

Could you narrow down which bundle exactly requires javax.sevlet 3.1 - probably Jetty?!
Regards,
Ivan
Re: Help System under 3.4 [message #1782004 is a reply to message #1781955] Thu, 15 February 2018 20:07 Go to previous messageGo to next message
Sebastian von Klinski is currently offline Sebastian von KlinskiFriend
Messages: 12
Registered: October 2012
Junior Member
Hi Ivan,

Thank you very much for your fast response!

The bundle, that tries to instantiate the HttpSessionIdListener is indeed org.eclipse.equinox.http.jetty_3.4.0.v20170503-2025.jar.

The Class-not-found exception can be seen below. This exception is thrown, when javax.servlet 3.0 or lower is used. That makes sense, as the HttpSessionIdListener has been added in javax.servlet 3.1.

Interestingly, the bundle org.eclipse.equinox.http.jetty has the following imported package specification in the manifest:

javax.servlet;version="[2.6.0,4.0.0)",javax.servlet.ht
tp;version="[2.6.0,4.0.0)"

This should be wrong as the bundle requires a class from 3.1, shouldn't it?

Does these hints help you?

Thanks for your help in advance!

Best regards,

Sebastian

__________________________________________________

Caused by: java.lang.ClassNotFoundException: javax.servlet.http.HttpSessionIdListener cannot be found by org.eclipse.equinox.http.jetty_3.4.0.v20170503-2025
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:433)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:395)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:387)
at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:150)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 32 more

Re: Help System under 3.4 [message #1782125 is a reply to message #1782004] Mon, 19 February 2018 09:23 Go to previous messageGo to next message
Ivan Furnadjiev is currently offline Ivan FurnadjievFriend
Messages: 2426
Registered: July 2009
Location: Sofia, Bulgaria
Senior Member
Hi,
unfortunately RAP Runtime consumes the "org.eclipse.equinox.http.jetty" bundle directly from the platform without any modifications. Please report this issue to Equinox -> Compendim.
Regards,
Ivan
Re: Help System under 3.4 [message #1782158 is a reply to message #1782125] Mon, 19 February 2018 16:51 Go to previous messageGo to next message
Sebastian von Klinski is currently offline Sebastian von KlinskiFriend
Messages: 12
Registered: October 2012
Junior Member
Hi Ivan,

Ok, thanks for your reply. I will do so.

Best regards,

Sebastian
Re: Help System under 3.4 [message #1782551 is a reply to message #1782158] Mon, 26 February 2018 11:33 Go to previous messageGo to next message
Sebastian von Klinski is currently offline Sebastian von KlinskiFriend
Messages: 12
Registered: October 2012
Junior Member
Hi all,

I solved the problem and got the help system running under RAP 3.4. The reason for the problems described above were outdated bundles that I added to the target platform. If all bundles are up-to-date, the problem does not occur.

I started with an empty target rap platform and added step by step the required bundles. I downloaded the bundles from the eclipse update site: http://download.eclipse.org/eclipse/updates/4.7/R-4.7.1-201709061700/plugins/?d

With this approach a target platform can be created where the help system runs without problems.

Best regards,

Sebastian
Re: Help System under 3.4 [message #1783507 is a reply to message #1782551] Tue, 13 March 2018 17:18 Go to previous messageGo to next message
Sebastian von Klinski is currently offline Sebastian von KlinskiFriend
Messages: 12
Registered: October 2012
Junior Member
Hi all,

unfortunately, I still have a problem with running the help system in my rap application. The help system works fine, when I start the rap application from the eclipse development environment. However, if I deploy the application under tomcat, the help system won't start.

If I connect the osgi console to the tomcat web-app, I can see that the org.eclipse.help.webapp is installed (see screen shot). If I, however, try to start the bundle, it complains that javax.servlet cannot be resolved.

index.php/fa/32313/0/

However, the bundle should not be added according to the rap documentation.

Has somebody an idea, how I could solve this problem?

Thanks in advance,

Sebastian

Re: Help System under 3.4 [message #1783588 is a reply to message #1783507] Wed, 14 March 2018 12:22 Go to previous message
Sebastian von Klinski is currently offline Sebastian von KlinskiFriend
Messages: 12
Registered: October 2012
Junior Member
Hi all,

I found a way to solve the problem. I had to modify the Manifest.mf in the org.eclipse.help.webapp_3.9.1.v20170816-0843.jar bundle.

In the manifest there was the following import requirement:

Import-Package: com.ibm.icu.text;version="3.8.0",javax.servlet;version
="3.1.0",javax.servlet.http;version="3.1.0",org.osgi.service.http;ver
sion="1.2.0"

I removed the dependency from javax.servlet und javax.servlet.http from the manifest. Then the help system could be used again.

Best regards,

Sebastian
Previous Topic:Nebula GridItem.setColumnSpan display problem
Next Topic:Multiple RAP Sessions lead to Session Timeout
Goto Forum:
  


Current Time: Fri Apr 19 22:11:16 GMT 2024

Powered by FUDForum. Page generated in 0.03593 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top