HTTP Glassfish (v5) Application Server - Bibliothek zur Verfügung stellen

Diskutiere Glassfish (v5) Application Server - Bibliothek zur Verfügung stellen im Netzwerkprogrammierung Bereich.
H

HiItsMe

Hallo liebe Community,

ich würde gerne auf meinen Application Server eine Bibliothek zur Verfügung stellen die auch in meinen Servlets und darunter liegenden Klassen mit eingebunden ist. Leider kann der Server diese nicht finden ich bekomme folgende Fehlermeldungen:
  • javax.servlet.ServletException
  • java.lang.NoClassDefFoundError
  • java.lang.ClassNotFoundException
Bei der Bibliothek handelt es sich um eine nicht in einem Maven Repository verfügbaren.

=> Ich arbeite mit Maven und Eclipse - wobei das Deployment allerdings Eclipse unabhängig funktionieren muss.

Bisher habe ich folgendes eingestellt:

POM (die dependency der einzubindenden Bibliothek):
Code:
<dependency>
	<groupId>com.sap.conn.jco</groupId>
	<artifactId>sapjco3</artifactId>
	<version>3.0.17</version>
	<scope>system</scope>
	<systemPath>C://JCo3_0/sapjco3.jar</systemPath>
</dependency>
Außerdem habe ich mit add-library
https://docs.oracle.com/cd/E26576_01/doc.312/e24938/add-library.htm#GSRFM00818
diese dem Glassfish-Server zugeführt
Code:
add-library --type=common --upload=true C:\JCo3_0\\sapjco3.jar
add-library --type=common --upload=true C:\JCo3_0\\sapjco3.dll
und Erfolgsmeldungen bekommen.

Trotzdem werden sie nicht gefunden...

Beispiel für gson-Bibliothek (welche funktioniert):
Code:
<dependency>
	<groupId>com.google.code.gson</groupId>
	<artifactId>gson</artifactId>
	<version>2.8.4</version>
</dependency>
und dann wird die Bibliothek von Maven in target/ProjectName/WEB-INF/lib/gson-2.8.4.jar eingefügt und anscheinend deployed, wenn ich nun manuell auch die .jar und .dll der sapjco3 Bibliothek einfüge, dann werden sie von Maven einfach wieder entfernt.

Ich bin weder für Glassfish noch für Maven ein Experte, ich versuche beide noch zu durchdringen.

Danke im Voraus.

MfG
HiItsMe
 
H

HiItsMe

Die Frage könnte auch unter Deployment passen oder in JavaEE unter Web Tier, Application Tier, Server einrichten und konfigurieren.
Ich habe das aus meiner Sicht allgemeinste genommen, ich denke die Einordnung hängt auch vom Lösungsweg ab, den ich bisher noch nicht kenne. Falls ich das Thema also aus Sicht eines Moderators falsch platziert habe würde ich mich freuen, wenn ihr es entsprechend anpasst.
 
H

HiItsMe

Weitere Suche im Netz hat ergeben, dass Möglicherweise die Angabe der Bibliothek als "provided" in Maven reicht, wenn ich die Ressourcen zu Glassfish hinzugefügt (add-library) habe:

Code:
<dependency>
    <groupId>com.sap.conn.jco</groupId>
    <artifactId>sapjco3</artifactId>
    <version>3.0.17</version>
    <scope>provided</scope>
</dependency>
Allerdings bekomme ich nun eine "Missing Artifact com.sap.conn.jco:sapjco3:jar:3.0.17" Fehlermeldung in meiner pom.xml.

Die Bibliothek liegt auf meinem Server unter:
  • "F:\glassfish5\glassfish\domains\domain1\lib\sapjco3.jar"
  • "F:\glassfish5\glassfish\domains\domain1\lib\sapjco3.dll"
beide habe ich mit den im ersten Beitrag angegebenen Befehl hinzugefügt.

Wie schaffe ich es die Fehlermeldung in Maven aufzulösen und auch in meinen Servlets und korrespondierenden Klassen korrekte Imports zu haben?
 
H

HiItsMe

Stimmt, dass hat das gewünschte Ergebnis gebracht. Vielen Dank!
 
Thema: 

Glassfish (v5) Application Server - Bibliothek zur Verfügung stellen

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben