2017-06-27 2 views
0

J'essaie de lancer Jetty avec ma Webapp, mais je suis confronté à une erreur étrange.Jetty - Erreur au démarrage - PicketLinkServletContextListener.isHttpSecurityEnabled - NullPointerException

faits:

  • J'utilise IntelliJ et à partir de la jetée IDE
  • Mon webapp produire une guerre
  • Je ne cherche pas à utiliser la jetée avec HTTPS
  • Mon webapp fonctionne sur Wildfly 9.0.2 avec n'importe quel problème
  • Journal montre le chargement de mes caches, haricots et configurations de ressort.
  • je n'avais pas changer quoi que ce soit directement dans la jetée, juste fait quelques configurations sur InteliJ
  • Jetty Version: 9.4.0v20161208
  • Je ces modules Jetty activés:
    1. maison-base d'avertissement
    2. poste
    3. serveur
    4. jsp
    5. ressources
    6. déployer
    7. jstl
    8. websocket
    9. http
    10. , plus
    11. jndi
    12. client
    13. journalisation jetée
  • J'ai un pilote de base de données pour H2, Teradata et MSSQL mon/dossier ext
  • Après l'exception montrée ci-dessous, il y a une autre erreur étrange liée à l'analyse HTTP. S'il vous plaît, regardez à la fin du journal.
  • Erreur:

    14:46:58.459 [Scanner-1] INFO org.springframework.web.context.ContextLoader - Root WebApplicationContext: initialization completed in 22631 ms 
    2017-06-27 14:46:58.459:WARN:oejw.WebAppContext:Scanner-1: Failed startup of context [email protected]{/mywebapp,[file:///C:/Users/username/IdeaProjects/mywebapp/target/mywebapp/, jar:file:///C:/Users/username/IdeaProjects/mywebapp/target/mywebapp/WEB-INF/lib/springfox-swagger-ui-2.7.0.jar!/META-INF/resources],UNAVAILABLE} 
    java.lang.NullPointerException 
        at org.picketlink.http.internal.PicketLinkServletContextListener.isHttpSecurityEnabled(PicketLinkServletContextListener.java:80) 
        at org.picketlink.http.internal.PicketLinkServletContextListener.contextInitialized(PicketLinkServletContextListener.java:56) 
        at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:865) 
        at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:532) 
        at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:828) 
        at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:344) 
        at org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1480) 
        at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1442) 
        at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:788) 
        at org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:261) 
        at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:540) 
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) 
        at org.eclipse.jetty.deploy.bindings.StandardStarter.processBinding(StandardStarter.java:41) 
        at org.eclipse.jetty.deploy.AppLifeCycle.runBindings(AppLifeCycle.java:188) 
        at org.eclipse.jetty.deploy.DeploymentManager.requestAppGoal(DeploymentManager.java:499) 
        at org.eclipse.jetty.deploy.DeploymentManager.addApp(DeploymentManager.java:147) 
        at org.eclipse.jetty.deploy.providers.ScanningAppProvider.fileAdded(ScanningAppProvider.java:180) 
        at org.eclipse.jetty.deploy.providers.WebAppProvider.fileAdded(WebAppProvider.java:458) 
        at org.eclipse.jetty.deploy.providers.ScanningAppProvider$1.fileAdded(ScanningAppProvider.java:64) 
        at org.eclipse.jetty.util.Scanner.reportAddition(Scanner.java:610) 
        at org.eclipse.jetty.util.Scanner.reportDifferences(Scanner.java:529) 
        at org.eclipse.jetty.util.Scanner.scan(Scanner.java:392) 
        at org.eclipse.jetty.util.Scanner$1.run(Scanner.java:329) 
        at java.util.TimerThread.mainLoop(Timer.java:555) 
        at java.util.TimerThread.run(Timer.java:505) 
    [2017-06-27 02:46:58,932] Artifact mywebapp:war exploded: Artifact is deployed successfully 
    [2017-06-27 02:46:58,932] Artifact mywebapp:war exploded: Deploy took 31.279 milliseconds 
    2017-06-27 14:46:59.544:WARN:oejh.HttpParser:qtp985934102-25: Illegal character 0x16 in state=START for buffer [email protected][p=1,l=197,c=8192,r=196]={\x16<<<\x03\x01\x00\xC0\x01\x00\x00\xBc\x03\x03\xB8\x86,2\xCe\xC6\xD7...\x00\x08\x8a\x8a\x00\x1d\x00\x17\x00\x18::\x00\x01\x00>>>; q=.2\r\nConnectio...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} 
    2017-06-27 14:46:59.545:WARN:oejh.HttpParser:qtp985934102-25: bad HTTP parsed: 400 Illegal character 0x16 for [email protected]{r=0,c=false,a=IDLE,uri=null} 
    2017-06-27 14:46:59.663:WARN:oejh.HttpParser:qtp985934102-47: Illegal character 0x16 in state=START for buffer [email protected][p=1,l=197,c=8192,r=196]={\x16<<<\x03\x01\x00\xC0\x01\x00\x00\xBc\x03\x03\xDe\xB7\xFf\xC4\xCdZ\xD8...\x00\x08\xBa\xBa\x00\x1d\x00\x17\x00\x18\xCa\xCa\x00\x01\x00>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} 
    2017-06-27 14:46:59.663:WARN:oejh.HttpParser:qtp985934102-47: bad HTTP parsed: 400 Illegal character 0x16 for [email protected]{r=0,c=false,a=IDLE,uri=null} 
    

Avez-vous une idée de la façon de le résoudre?

Avez-vous besoin de plus d'informations? S'il vous plaît, faites-moi savoir.

+0

Utilisez une version stable récente. Ne pas déployer dans jetty-distribution (voir l'avertissement qu'il vous donne). Ne changez pas le contenu dans jetty-distribution. Créez un répertoire d'instance 'jetty.base' approprié. [Les avertissements de votre analyseur sont dus à quelqu'un qui se connecte à un port http en utilisant https] (https://stackoverflow.com/questions/25625410/jetty-9-warning-badmessage-400-illegal-character).NPE est dans votre code, pas Jetty (besoin de plus de détails sur ce que votre code attend) –

+0

@JoakimErdfelt J'ai essayé maintenant avec 9.4.6.v20170531 et, malheureusement, rien n'a changé. Désolé mais que voulez-vous dire ne pas changer de distribution de jetée? Je voudrais simplement ajouter le conteneur en tant que serveur dans IntelliJ et configurer les modules et les artefacts de construction. A propos de l'erreur HTTP: Merci! Je vais regarder mieux maintenant. – Pmt

Répondre

0

PicketLink utilise CDI.

Jetty n'est pas livré avec le support CDI.

Vous devrez installer Weld/CDI dans votre webapp pour le support CDI dans Jetty.

+0

Parfait! J'ai ajouté le module CDI et j'ai eu une erreur d'annotation après cela. Puis ajouté le module d'annotation et maintenant je suis avec la même erreur qu'avant. Avez-vous une idée? Merci! – Pmt

+0

En testant un peu, j'ai compris que si j'excluais la dépendance au lien, tout irait bien. Malheureusement j'ai besoin de la lib. J'utilisais la version 2.7.0 et j'ai testé avec la dernière version (2.7.1) mais l'erreur persiste. Connaissez-vous une incompatibilité de Jetty avec Picketlink? – Pmt

+0

Ce n'est pas une incompatibilité. Picketlink a besoin de CDI. Vous devez ajouter le support CDI à votre webapp (ajouter une soudure et la configurer). –