出现错误指定了无效的Oracle URL:OracleDataSource.makeURL [英] getting error Invalid Oracle URL specified: OracleDataSource.makeURL

查看:146
本文介绍了出现错误指定了无效的Oracle URL:OracleDataSource.makeURL的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

尝试在服务器上运行应用程序时出现错误.我正在使用eclipse和glass fish服务器4.我制作了glassfish-resources.xml文件,并将其放在WEB-INF目录中.当我尝试在服务器上运行时.我收到以下异常

I am getting error when I try to run my application on Server. I am suing eclipse and glass fish server 4. I made a glassfish-resources.xml file and put it in the WEB-INF directory. When I try to run on server. I get the following 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)
.....

这是我的glassfish-resources.xml文件

Here is my glassfish-resources.xml file

<?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> 

这是我的persistence.xml文件

here is my persistence.xml file

<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>

我也将ojdbc6.jar放在lib/ext文件夹中.我正在使用Oracle 11g第2版.为什么我收到无效的URL错误?

I have also put ojdbc6.jar in the lib/ext folder. I am using oracle 11g release 2. Why I am getting invalid url error?

我还使用用户系统和密码检查了SQL Developer中的连接,该连接是否正常工作.

I have also check the connection in the SQL Developer and it is working, with user system and my password.

谢谢

推荐答案

好像您两次错误地输入了URL,并且属性名称不正确.

Looks like you have mistakenly given the url two times and the property name is not correct.

<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="url" value="jdbc:oracle:thin:@127.0.0.1:1521:XE" /> 

同样,最好参考glassfish 4.1的文档以获取可在glassfish-resources.xml中使用的正确属性名称.

Also it would be a good idea to refer to the documentation of glassfish 4.1 to get the correct property names you can use in glassfish-resources.xml

对于Glassfish 3.1,在此处 a>

For Glassfish 3.1 the options are given here

这篇关于出现错误指定了无效的Oracle URL:OracleDataSource.makeURL的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆