wildfly registrieren von mysql als Datenquelle
Ich habe versucht, konfigurieren Sie mysql als Datenquelle im wildfly. Ich bin nicht sicher, was ich vermisse, bekomme ich einen Fehler beim starten .
Habe ich die mysql-connector-java-5.0.8-bin.jar und die module.xml in den Ordner:
"/wildfly-8.1.0.Final/modules/system/Ebenen/base/com/mysql/main"
unten sind die Dateien, die
module.xml
<module xmlns="urn:jboss:module:1.1"
name="com.mysql">
<resources>
<resource-root path="mysql-connector-java-5.0.8.jar"/>
<!-- Insert resources here -->
</resources>
<dependencies>
<module name="javax.api"/>
<module name="javax.transaction.api"/>
<module name="javax.servlet.api" optional="true"/>
</dependencies>
</module>
standalone.xml
<datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">
<connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE</connection-url>
<driver>h2</driver>
<security>
<user-name>sa</user-name>
<password>sa</password>
</security>
</datasource>
<datasource jta="true" jndi-name="java:jboss/datasources/proj" pool-name="proj" enabled="true" use-java-context="true" use-ccm="true">
<connection-url>jdbc:mysql://localhost:3306</connection-url>
<driver>mysql</driver>
<security>
<user-name>root</user-name>
<password>admin123</password>
</security>
<statement>
<prepared-statement-cache-size>32</prepared-statement-cache-size>
<share-prepared-statements>true</share-prepared-statements>
</statement>
</datasource>
<drivers>
<driver name="mysql" module="com.mysql">
<xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class>
</driver>
<driver name="h2" module="com.h2database.h2">
<xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
</driver>
</drivers>
</datasources>
Ich getestet habe, die jdbc-Konnektivität mit einem eigenständigen Programm in eclipse und es funktionierte
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class ConnectSql {
public static void main(String []args){
String userName = "root";
String pass = "admin123";
String url = "jdbc:mysql://localhost/";
String driver ="com.mysql.jdbc.Driver";
String db = "proj";
try{
//registering the driver.
Class.forName(driver);
Connection con = DriverManager.getConnection(url+db,userName,pass);
Statement st = con.createStatement();
ResultSet rs = st.executeQuery("select f_name from t_users");
while(rs.next()){
System.out.println("name :"+rs.getString(1));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
catch(ClassNotFoundException cnf){
cnf.printStackTrace();
}
}
}
Gemäß den nachfolgenden link und verändert die module.xml
Wildfly 8.0.0 mysql Probleme mit datasource
Hier ist ein error-log bekomme ich beim start
02:45:17,169 ERROR [org.jboss.als.controller.management-Betrieb]
(Controller Boot Thread) JBAS014613: Betrieb ("add") fehlgeschlagen -
Adresse: ([
("subsystem" => "datasources"),
("Daten-Quelle" => "proj") ]) - Fehler-Beschreibung: {"JBAS014771: Dienstleistungen, mit fehlenden/nicht verfügbare Abhängigkeiten" => [
"jboss.Daten-Quelle.java:jboss/datasources/proj fehlt [jboss.jdbc-Treiber.mysql]",
"jboss.Treiber-demander.java:jboss/datasources/proj fehlt [jboss.jdbc-Treiber.mysql]" ]} 02:45:17,175 FEHLER
[org.jboss.als.controller.management-Betrieb] (Controller Boot
Thread) JBAS014613: Betrieb ("add") fehlgeschlagen - Adresse: ([
("subsystem" => "datasources"),
("Daten-Quelle" => "proj") ]) - Fehler-Beschreibung: {
"JBAS014771: Dienstleistungen, mit fehlenden/nicht verfügbare Abhängigkeiten" => [
"jboss.Daten-Quelle.java:jboss/datasources/proj fehlt [jboss.jdbc-Treiber.mysql]",
"jboss.Treiber-demander.java:jboss/datasources/proj fehlt [jboss.jdbc-Treiber.mysql]"
],
"JBAS014879: Ein oder mehrere Dienste wurden nicht gestartet werden aufgrund von einem oder mehreren indirekten Abhängigkeiten nicht verfügbar sind." => {
"Dienstleistungen, die nicht in der Lage waren zu starten:" => [
"jboss.Daten-Quelle.Referenz-Werk.proj",
"jboss.die Benennung.Kontext.java.jboss.datasources.proj"
],
"Dienste, die die Ursache sein kann:" => ["jboss.jdbc-Treiber.mysql"]
} }
InformationsquelleAutor trooper31 | 2014-07-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zur Behebung des mysql datasource-Konfiguration Problem auf Wildfly, die ich verwendet, die admin-Konsole, fügen Sie die Datenquelle aus, und testen Sie es.
Wenn Sie sich anmelden, um die web-Konsole und finden Sie die datasource, die Sie versucht zu konfigurieren, deaktivieren
dass eine es zu entfernen . Die standalone.xml und die module.xml wieder auf die orginale.
Schritte für den Zugriff auf die web-Konsole
Konfigurieren Sie eine neue Datenquelle :
name :mysql
JNDI :java:jboss/datasources/proj
Klicken Sie auf weiter, und geben Sie die url (ich habe die unten) und klicken Sie auf aktivieren, und klicken Sie dann auf test
- url : jdbc:mysql://localhost/proj
Sollte der test zeigen Erfolg
Die änderungen an der standalone.xml und die module.xml werden automatisch vorgenommen .
Wenn Sie den server neu starten, nun sollte es beginnen, ohne Fehler und Sie sollten in der Lage sein, um den Zugriff auf die Datenbank von Ihrem web-Projekt
InformationsquelleAutor trooper31
Habe ich funktionierenden Konfiguration der mysql-Treiber auf wildfly.
Dem kleinen Unterschied scheint zu sein, die Präsenz von "driver-class" - tag.
Ich hoffe, es wird helfen.
(Bereitstellung von mysql-Treiber als deployment funktioniert auch und es wird empfohlen Weg. https://docs.jboss.org/author/display/WFLY8/DataSource+Konfiguration )
[Bearbeiten]
Ich habe mysql-Modul unter wildfly/modules/com/mysql/jdbc/main/. Ich habe nur jetzt aufgefallen Sie Modul-Pfad nicht entsprechen zu Modul-Namen. Und ich habe keine doc ' s gerade noch, aber ich glaube nicht, dass Sie sollten mit Chaos-Module/system-Verzeichnis.
module.xml
Sie können versuchen Sie es mit einer neueren version von mysql-Treiber. Ich bin mit 5.1.30 . Auch, was das os verwenden Sie? Meine Kollegen bei der Arbeit führen Sie in einige Probleme unter Windows mit der version wildfly-8.1.0.Final (ich weiß nicht die details). Sie landeten Herabstufung auf Wildfly-8.0.0.Endgültig .
Ich bin mit Ubuntu 14.04 .Ich habe versucht, die Aktualisierung der Treiber immer noch die gleichen Fehler
Haben Sie Lesen Sie die Bearbeiten?
Ich vergaß zu erwähnen, die verschoben wurden, die mysql-connector-java-5.0.8-bin.jar der Pfad /wildfly-8.1.0.Final/modules/system/Ebenen/base/com/mysql/main" nach dem Lesen der Anleitung in dem folgenden link docs.jboss.org/author/display/WFLY8/Developer+Guide. Ich aktualisiert, die Pfadangaben in der Frage . Danke für den Hinweis
InformationsquelleAutor NiematojakTomasz
Zwei Dinge: ich habe mir zu arbeiten, und haben den Fahrer-und xml-sich in $JBOSS_HOME/modules/com/mysql/jdbc/main - ich bin ziemlich neu mit diesem als gut, also bin ich nicht sicher, ob das zählt. Eine andere Sache: ich weiß nicht, ob es nur ein Tippfehler ist, aber wenn es nur kopiert und eingefügt, es sieht aus wie Ihre JAR-name ist falsch
sein, wenn es
Vergaß ich die .jar in mir, und das endete beheben. Hoffe, das hilft!
InformationsquelleAutor Michael Guinn
Dies kann passieren, wenn Sie die download-mysql-connector-zip und hochladen der zip als Bereitstellung. Aber der richtige Weg ist, der zum entpacken des downloads und zeigen Sie auf die enthaltenen jar.
InformationsquelleAutor ACV
Gibt es drei Möglichkeiten, mit denen Sie können einfach erstellen Sie die Datenquelle in wildfly
Gehen WildFly Verzeichnis/standalone/deployments
Einfachste Weg zum erstellen von datasource xml mit folgendem Inhalt
InformationsquelleAutor PVR