2017-05-03 4 views
3

Ich habe ein Problem, wenn ich eine Spring-Boot-Anwendung in Weblogic 12.2.1 durch Eclipse Neon bereitstellen. Dies sind die KomponentenSpring Boot + Eclipse + Weblogic 12.2.1

  • Einfache Spring-Boot-Anwendung mit Abhängigkeit vom Netz.
  • Eclipse-Neon
  • Weblogic 12.2.1.1 in Eclipse einbinden

Der Fehler ist:

weblogic.management.DeploymentException: java.lang.ClassNotFoundException: org.springframework.security.oauth2.client.token.AccessTokenRequest 
    at weblogic.application.internal.BaseDeployment.throwAppException(BaseDeployment.java:132) 
    at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:246) 
    at weblogic.application.internal.EarDeployment.prepare(EarDeployment.java:66) 
    at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:158) 
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:65) 
    Truncated. see log file for complete stacktrace 

Aber ich bin nicht in der Anwendung mit Sicherheit. Wenn ich es als "Spring Boot App" ausführe, läuft die Anwendung.

Ich denke, das Problem ist mit Weblogic, wie kann ich es lösen?

Antwort

5

Für jeden anderen, der dies trifft, scheint es sich um einen Bug im Spring Boot (Spring-Boot-Autoconfigure) zu handeln, der durch die nervige Einhaltung der EE-Spezifikation des Oracle WebLogic-Teams ausgelöst wurde. Siehe hier für weitere Informationen: https://github.com/spring-projects/spring-boot/issues/9441

Die Version 1.5.5.RELEASE von Spring Boot hat dies behoben. Also, wenn Sie gradle zum Beispiel unter Verwendung sind, wenn Sie Ihre Abhängigkeit wie folgt (und jede andere Spring Boot-Abhängigkeiten Sie haben) sollte es beheben:

compile "org.springframework.boot:spring-boot-autoconfigure:1.5.5.RELEASE" 

Ich habe gerade bestätigt dies für mich funktioniert nach dem gleichen Problem bekommen .

1

Für mich verschwand diese Ausnahme, wenn die WAR-Datei mit der WebLogic-Konsole bereitgestellt wurde. Scheint ein Fehler in der Eclipse-WebLogic-Integration zu sein.

1

hier gezwungen Ein weiterer Mann zu WebLogic zu implementieren: \

Dies ist, was ich damit gemacht habe das Integrationsproblem beetween WebLogic, Eclipse und Feder-Boot zu beheben:

  1. Ich habe hinzugefügt oauth Abhängigkeit meiner pom:

`` `

<dependency> 
    <groupId>org.springframework.security.oauth</groupId> 
    <artifactId>spring-security-oauth2</artifactId> 
</dependency> 
``` 

Aber danach, weblogic fragte meine Benutzer und Passwort für jeden Rest Endpunkt (nicht diejenigen Antrieb)

So, hier kommt der zweite Punkt:

  1. ausschließen Sicherheit von Autokonfiguration (oder stellen Sie es, wie Sie wollen)

`` `

@EnableAutoConfiguration(exclude = {  org.springframework.boot.autoconfigure.security.SecurityAutoConfiguration.class 
}) 

` `` Hoffe, es hilft!

+0

Wir sind mit dem gleichen Problem fest. Was Sie vorschlagen, ist eher eine Problemumgehung als eine Lösung. Während es die Ausnahme verschwinden lässt, verstehe ich nicht, warum die zusätzliche Abhängigkeit überhaupt erforderlich wäre. Wir untersuchen noch. Das Bereitstellen der gleichen Anwendung in Tomcat funktioniert einwandfrei. –

+0

Ja. Es ist ein Workaround ...Und natürlich: die Bereitstellung auf Tomcat funktioniert gut ... aber ich fürchte, OPS Leute in meiner Firma sind nicht sehr zuversichtlich mit Open Source. Sie sind scheiße: P – Bringer

Verwandte Themen