Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[jetty-dev] NextProtoNego and OSGi

Greetings Jetty 9 developers,

I recently migrated my code-base to Jetty 9 (M5). The migration went fine and HTTP works. However, I'm unable to create any SSL connectivity.

As soon as I try to use a HTTPSPDYServerConnector I get a mystical NoClassDefFoundError: org/eclipse/jetty/npn/NextProtoNego$ServerProvider.

java.lang.NoClassDefFoundError: org/eclipse/jetty/npn/NextProtoNego$ServerProvider
  at java.lang.ClassLoader.defineClass1(Native Method)
  at [more classloader stuff]
at org.eclipse.jetty.spdy.server.http.HTTPSPDYServerConnector.<init>(HTTPSPDYServerConnector.java:63)

It seems to come from NPNServerConnectionFactory which is in bundle oej.spdy.server.

While analysing the code involved I found the following code:

  SPDYServerConnectionFactory.checkNPNAvailable()
  NPNServerConnectionFactory.NPNServerConnectionFactory(String...)

Both lead to the suspicion that something should be on the boot classpath.

I also recognized the following bundle header in oej.spdy.server:

  Ignore-Package: org.eclipse.jetty.npn

That's likely an issue. Even if a package is coming from the boot classpath it still needs an Import-Package declaration in the bundle. OSGi only makes "java.*" imports implicit.

Anyway, there doesn't seem to be a jar in the Jetty p2 repo.

Where can I find more information about this "NPN" stuff? For example, I'd like to understand the requirement regarding the boot classpath in order to come up with a solution for OSGi/p2 based deployments.

Thanks a lot!

-Gunnar

--
Gunnar Wagenknecht
gunnar@xxxxxxxxxxxxxxx
http://wagenknecht.org/



Back to the top