• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

wls12c SQLAuthenticator with Multi DataSource

 
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi,

I am using wls12c.
I create jdbc DataSources cgDataSource-nonXA1 to 5
I create Multi DataSource cgDataSource-nonXAMulti ( inherits the single DataSources ).
I create Security Provider in Realm of Type SQLAuthenticator. In providerspecific Section I choose cgDataSource-nonXAMulti as DataSourceName.

When I perform updateDomain() via WLST, I get an Exception ( no effect thow, as the Authentication still works ).
If I choose a SingleDataSource for SQLAuthenticator it works.
If I set read-only-sql-authenticatorType, no error ( I need it to be with writeAccess, to be able to set the Password in offline config via WLST in a Setup Routine ).
I need MultiDataSource because of Failover is needed.

Details:
output of dumpStack() in WLST:
com.oracle.cie.domain.script.jython.WLSTException: com.oracle.cie.domain.script.ScriptException: Domainerweiterung konnte nicht angewendet werden.

Domainspeicherort: /location ( changed for privacy reasons )

Ursache: null

Ausnahme:

java.lang.NullPointerException

at com.oracle.cie.domain.script.jython.CommandExceptionHandler.handleException(CommandExceptionHandler.java:55)
at com.oracle.cie.domain.script.jython.WLScriptContext.handleException(WLScriptContext.java:1967)
at com.oracle.cie.domain.script.jython.WLScriptContext.updateDomain(WLScriptContext.java:604)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.python.core.PyReflectedFunction.__call__(Unknown Source)
at org.python.core.PyMethod.__call__(Unknown Source)
at org.python.core.PyObject.__call__(Unknown Source)
at org.python.core.PyInstance.invoke(Unknown Source)
at org.python.pycode._pyx5.updateDomain$21(/tmp/WLSTOfflineIni1870421621606658422.py:103)
at org.python.pycode._pyx5.call_function(/tmp/WLSTOfflineIni1870421621606658422.py)
at org.python.core.PyTableCode.call(Unknown Source)
at org.python.core.PyTableCode.call(Unknown Source)
at org.python.core.PyFunction.__call__(Unknown Source)
at org.python.pycode._pyx23.f$0(<console>:1)
at org.python.pycode._pyx23.call_function(<console>)
at org.python.core.PyTableCode.call(Unknown Source)
at org.python.core.PyCode.call(Unknown Source)
at org.python.core.Py.runCode(Unknown Source)
at org.python.core.Py.exec(Unknown Source)
at org.python.util.PythonInterpreter.exec(Unknown Source)
at org.python.util.InteractiveInterpreter.runcode(Unknown Source)
at org.python.util.InteractiveInterpreter.runsource(Unknown Source)
at org.python.util.InteractiveInterpreter.runsource(Unknown Source)
at weblogic.management.scripting.WLST.main(WLST.java:219)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at weblogic.WLST.main(WLST.java:29)
Caused by: com.oracle.cie.domain.script.ScriptException: Domainerweiterung konnte nicht angewendet werden.

Domainspeicherort: /location ( change due to privacy reasons )

Ursache: null

Ausnahme:

java.lang.NullPointerException

at com.oracle.cie.domain.script.ScriptExecutor.runGenerator(ScriptExecutor.java:3706)
at com.oracle.cie.domain.script.ScriptExecutor.updateDomain(ScriptExecutor.java:1248)
at com.oracle.cie.domain.script.jython.WLScriptContext.updateDomain(WLScriptContext.java:600)
... 29 more
Caused by: java.lang.NullPointerException
at com.oracle.cie.domain.jdbc.WLSJDBCConnectionInfo.<init>(WLSJDBCConnectionInfo.java:33)
at com.oracle.cie.domain.security.SQLAuthenticatorHandler.getJDBCConnectionInfo(SQLAuthenticatorHandler.java:186)
at com.oracle.cie.domain.security.SQLAuthenticatorHandler.loadSQLAuthenticatorFile(SQLAuthenticatorHandler.java:218)
at com.oracle.cie.domain.TemplateImporter.run(TemplateImporter.java:798)
at java.lang.Thread.run(Thread.java:744)

config:
<sec:authentication-provider xsi:type="wls:sql-authenticatorType">
<sec:name>SQLAuthenticator</sec:name>
<sec:control-flag>OPTIONAL</sec:control-flag>
<wls:data-source-name>cgDataSource-nonXAMulti</wls:data-source-name>
</sec:authentication-provider>


jdbc Files:
Multi:
<?xml version="1.0" encoding="UTF-8"?>
<jdbc-data-source xsi:schemaLocation="http://xmlns.oracle.com/weblogic/jdbc-data-source [^] http://xmlns.oracle.com/weblogic/jdbc-data-source/1.0/jdbc-data-source.xsd" [^] xmlns="http://xmlns.oracle.com/weblogic/jdbc-data-source" [^] xmlns:sec="http://xmlns.oracle.com/weblogic/security" [^] xmlns:wls="http://xmlns.oracle.com/weblogic/security/wls" [^] xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> [^]
<name>cgDataSource-nonXAMulti</name>
<jdbc-data-source-params>
<jndi-name>cgDataSource-nonXA</jndi-name>
<algorithm-type>Failover</algorithm-type>
<data-source-list>cgDataSource-nonXA1,cgDataSource-nonXA2,cgDataSource-nonXA3,cgDataSource-nonXA4,cgDataSource-nonXA5</data-source-list>
</jdbc-data-source-params>
</jdbc-data-source>

cgDataSource-nonXA1 - 5:
<?xml version="1.0" encoding="UTF-8"?>
<jdbc-data-source xsi:schemaLocation="http://xmlns.oracle.com/weblogic/jdbc-data-source [^] http://xmlns.oracle.com/weblogic/jdbc-data-source/1.0/jdbc-data-source.xsd" [^] xmlns="http://xmlns.oracle.com/weblogic/jdbc-data-source" [^] xmlns:sec="http://xmlns.oracle.com/weblogic/security" [^] xmlns:wls="http://xmlns.oracle.com/weblogic/security/wls" [^] xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> [^]
<name>cgDataSource-nonXA1</name>
<jdbc-driver-params>
<url>jdbc:oracle:thin:@machine:1521:instance</url> ( changed due to privacy reasons )
<driver-name>oracle.jdbc.OracleDriver</driver-name>
<properties>
<property>
<name>user</name>
<value>user</value> ( changed due to privacy reasons )
</property>
<property>
<name>oracle.jdbc.ReadTimeout</name>
<value>602000</value>
</property>
</properties>
<password-encrypted>password</password-encrypted> ( changed due to privacy reasons )
</jdbc-driver-params>
<jdbc-connection-pool-params>
<initial-capacity>0</initial-capacity>
<max-capacity>50</max-capacity>
<test-connections-on-reserve>true</test-connections-on-reserve>
<test-table-name>SQL SELECT 1 FROM DUAL</test-table-name>
<statement-timeout>600</statement-timeout>
</jdbc-connection-pool-params>
<jdbc-data-source-params>
<jndi-name>cgDataSource-nonXA1</jndi-name>
<global-transactions-protocol>None</global-transactions-protocol>
</jdbc-data-source-params>
<jdbc-xa-params/>
</jdbc-data-source>
 
Consider Paul's rocket mass heater.
reply
    Bookmark Topic Watch Topic
  • New Topic