2015-05-24 62 views
0

我正尝试使用WLST脱机为weblogic创建数据源jdbc。WLST脱机jdbc名称包含斜杠

cd('/') 

create('jdbc/test', 'JDBCSystemResource') 

cd('JDBCSystemResource/(jdbc/test)/JdbcResource/(jdbc/test)') 

,但我不断收到一个错误:

没有这样的元素JdbcResource命名为加多宝

上的Oracle网站,他们说用括号,但仍然失败了JdbcResource部分。

回答

1

这样看来使用WLST脱机时,您不能使用斜杠的名字。藏在WLST Documentation ...

When using WLST offline, the following characters are not valid in names of 
management objects: period (.), forward slash (/), or backward slash (\). 

我建议没有在数据源的名称“为jdbc /”,你可以为DS的JNDI名称,因为它是这个值使用其中客户将用它来找到它。

UPDATE:

我已经解释上使用括号该评论为是指网上WLST,但已经做了一下试验更多你是正确的,情况并非如此。我使用控制台创建一个名为'jdbc/test'的数据源。然后使用WLST在线我能够做CD直吧...

wls:/soa_domain/serverConfig> cd ('JDBCSystemResources/jdbc/test/JDBCResource/jdbc/test') 
wls:/soa_domain/serverConfig/JDBCSystemResources/jdbc/test/JDBCResource/jdbc/test> ls() 
dr-- InternalProperties 
dr-- JDBCConnectionPoolParams 
dr-- JDBCDataSourceParams 
dr-- JDBCDriverParams 
dr-- JDBCOracleParams 
dr-- JDBCXAParams 
-r-- Name          jdbc/test 
-r-- Version         null 
-r-x isSet         Boolean : String(propertyName) 
-r-x unSet         Void : String(propertyName) 

然后我尝试使用脱机使用的名字都occurrances加上括号一样,这失败了。然后,我尝试了树中的一个元素在同一时间动了起来,并前三成功(所以括号内是肯定是在脱机使用)......

wls:/offline/soa_domain>cd ('JDBCSystemResource/(jdbc/test)/JdbcResource') 
wls:/offline/soa_domain/JDBCSystemResource/(jdbc/test)/JdbcResource>ls() 
drw- jdbc/test 

这是其失败的最后一个元素。如果没有括号你得到“没有这样的元素”的错误...

wls:/offline/soa_domain/JDBCSystemResource/(jdbc/test)/JdbcResource>cd ('jdbc/test') 
Error: cd() failed. Do dumpStack() to see details. 
wls:/offline/dev2_soa_domain/JDBCSystemResource/(jdbc/test)/JdbcResource>dumpStack() 
com.oracle.cie.domain.script.jython.WLSTException: 
    com.oracle.cie.domain.script.ScriptException: No such element JdbcResource named jdbc 

用我们的括号...

wls:/offline/soa_domain/JDBCSystemResource/(jdbc/test)/JdbcResource>cd ('(jdbc/test)') 
Error: cd() failed. Do dumpStack() to see details. 
wls:/offline/soa_domain/JDBCSystemResource/(jdbc/test)/JdbcResource>dumpStack() 
com.oracle.cie.domain.script.jython.WLSTException: java.lang.UnsupportedOperationException: Could not create generic operation:JdbcResource 
.... 
Caused by: java.lang.UnsupportedOperationException: Could not create generic operation:JdbcResource 
    at com.oracle.cie.domain.operation.OperationBuilder.createConfigOperation(OperationBuilder.java:339) 

因此,在总结,我想你已经发现了一个错误在那里。我认为你的选择要么是在线使用WLST,要么在名称中没有斜线,虽然它仍然很好(实际上标准做法)在JNDI名称中有斜线。

+0

但正好在下面,您可以阅读以下内容: _如果需​​要cd到名称中包含正斜杠(/)的管理对象,请将对象名称括在括号内。例如: CD( 'JMSQueue /(JMS/REGISTRATION_MDB_QUEUE)')_ – user1237981

+0

周围事物的括号中航行在它包含 '/' 的路径工作。 – Arham