erste Fehler Ungültiger Oracle-URL angegeben: OracleDataSource.makeURL
Bin ich immer Fehler, wenn ich versuche zu laufen, dass meine Anwendung auf dem Server. Ich bin verklagt eclipse und Glas-Fisch-server-4. Ich machte einen glassfish-resources.xml Datei und legen Sie es in den WEB-INF-Verzeichnis. Wenn ich versuche zu laufen auf dem server. Ich bekomme die folgende exception
Internal Exception: java.sql.SQLException: Error in allocating a connection. Cause:
Connection could not be allocated because: Invalid Oracle URL specified:
OracleDataSource.makeURL
Error Code: 0
at org.eclipse.persistence.exceptions.DatabaseException.sqlException(DatabaseException.java:316)
at org.eclipse.persistence.sessions.JNDIConnector.connect(JNDIConnector.java:135)
at org.eclipse.persistence.sessions.DatasourceLogin.connectToDatasource(DatasourceLogin.java:162)
at org.eclipse.persistence.internal.databaseaccess.DatasourceAccessor.connectInternal(DatasourceAccessor.java:330)
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.connectInternal(DatabaseAccessor.java:307)
.....
Hier ist meine glassfish-resources.xml Datei
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE resources PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1
Resource Definitions//EN" "http://glassfish.org/dtds/glassfish-resources_1_5.dtd">
<resources>
<jdbc-connection-pool name="java:app/myOracleConnectionPool"
res-type="javax.sql.ConnectionPoolDataSource"
datasource-classname="oracle.jdbc.pool.OracleConnectionPoolDataSource">
<property name="User" value="system" />
<property name="Port" value="1521" />
<property name="DatabaseName" value="XE" />
<property name="ServerName" value="127.0.0.1" />
<property name="Url" value="jdbc:oracle:thin:@127.0.0.1:1521:XE" />
<property name="URL" value="jdbc:oracle:thin:@127.0.0.1:1521:XE" />
<property name="Password" value="xxxx" />
</jdbc-connection-pool>
<jdbc-resource enabled="true"
jndi-name="java:app/jdbc/myOracleDatasource"
object-type="user"
pool-name="java:app/myOracleConnectionPool">
<description />
</jdbc-resource>
</resources>
hier ist meine persistence.xml Datei
<persistence-unit name="chapter11PU" transaction-type="JTA">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<jta-data-source>java:app/jdbc/myOracleDatasource</jta-data-source>
<properties>
<property name="eclipselink.target-database" value="Oracle"/>
<property name="javax.persistence.schema-generation-action" value="drop-and-create"/>
<property name="javax.persistence.schema-generation-target" value="scripts"/>
<property name="javax.persistence.ddl-create-script-target" value="createfoo.sql"/>
<property name="javax.persistence.ddl-drop-script-target" value="dropfoo.sql"/>
<property name="eclipselink.deploy-on-startup" value="true"/>
<property name="eclipselink.application-location" value="/tmp"/>
<!-- To log SQL queries -->
<property name="eclipselink.logging.level.sql" value="FINE"/>
<property name="eclipselink.logging.parameters" value="true"/>
<property name="eclipselink.logging.level" value="INFO"/>
</properties>
</persistence-unit>
Habe ich auch ojdbc6.jar in der lib/ext Ordner. Ich bin mit oracle 11g release 2. Warum bin ich immer ungültige url Fehler???
Habe ich auch überprüfen Sie die Verbindung im SQL Developer und es funktioniert, mit dem Benutzer system und mein Passwort.
Dank
versuchen Sie
<jta-data-source>java:app/jdbc/myOracleDatasource</jta-data-source>
im persistance.xml zu <jta-data-source>app/jdbc/myOracleDatasource</jta-data-source>
InformationsquelleAutor Basit | 2013-10-24
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sieht aus wie Sie haben irrtümlicherweise die url zwei mal und der name der Eigenschaft ist nicht korrekt.
Sollte es
Es wäre auch eine gute Idee, konsultieren Sie die Dokumentation des glassfish 4.1, um die richtigen Namen der Eigenschaft, die Sie verwenden können glassfish-resources.xml
Für Glassfish 3.1 die Optionen sind gegeben hier
InformationsquelleAutor Shailendra
Habe ich das Problem gelöst. Eigentlich bin ich mit EJB 3.1, JSF 2.2, Java EE 7 und Glas-Fisch 4. Meine JSF-controller-Aufruf EJB, die CRUD-Vorgänge. Ich habe so etwas in persistence.xml
Hinweis:
So habe ich so etwas auf meine EJB
Was mir fehlte, war die
properties={"url=jdbc:oracle:thin:@localhost:1521:XE"}
Attribut. So war es mir Fehler. Nach dem hinzufügen dieses Attribut zu@DataSourceDefinition
. Der Fehler verschwunden und alles funktioniert Prima.Danke
InformationsquelleAutor Basit