这样看来使用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名称中有斜线。
但正好在下面,您可以阅读以下内容: _如果需要cd到名称中包含正斜杠(/)的管理对象,请将对象名称括在括号内。例如: CD( 'JMSQueue /(JMS/REGISTRATION_MDB_QUEUE)')_ – user1237981
周围事物的括号中航行在它包含 '/' 的路径工作。 – Arham