OSB & WLST: about ProxyServiceQuery
Hi all,
I'm using OSB10.3.1 and I wrote a WLST script for enabling/disabling OSB proxy services at my OSB project.
For example I've a project named MyProject that contains 2 OSB proxy services named:
- MyProxy
- SecondProxy
WLST extract:
print ' #### looking for ' + projectName + '/' + pattern + '*'
query = ProxyServiceQuery()
query.setPath(projectName + '/' + pattern + '*')
refs = alsbSession.getRefs(query)
for ref in refs:
if action == 'enable':
print ' #### ... enabling ' + ref.getLocalName()
mbean.enableService(ref)
Querying for MyProject/MyProxy* I got:
#### looking for MyProject/MyProxy*
#### ... disabling MyProxy
#### ... disabling SecondProxy
but 'SecondProxy' is returned even if doesn't match the query :-)
Do you have any hints for setting properly the query string ?
Thanks in advance
ferp
Hi Renè,
great !
Your hint was very useful.
Now using
query.setPath(projectName); # I specified MyProject
query.setLocalName(pattern); # I specified MyProxy
I get:
#### ... enabling MyProxy
and if I use
query.setPath(projectName); # I specified MyProject
query.setLocalName(pattern); # I specified *Proxy
I get:
#### ... enabling MyProxy
#### ... enabling SecondProxy
Thanks again
ferp
Similar Messages
-
OSB: WLST script using setPreserveExistingOperationalValues has no effect
Hi,
I have a WLST script which imports a sbconfig.jar into OSB and executes the file customization.xml. In this script I use the following options (although I know that "false" is the default value here):
alsbImportPlan.setPreserveExistingEnvValues(false)
alsbImportPlan.setPreserveExistingOperationalValues(false)
The idea behind is to overwrite the existing operational settings in OSB with the settings from the file sbconfig.jar.
But when I execute my WLST script, the operational settings are unchanged. What am I doing wrong?
Best regards,
KatjaHi,
thanks for your help. Now, I tried everything again from scratch and it worked!
I exported the sbconfig.jar from OSB and checked, that my settings were in the xml files. Then I modified the settings in OSB (that I can see a difference). I executed my WLST script with the new sbconfig.jar and checked the values in OSB. Now the values were changed as expected. I do not know what was wrong before, but maybe I mixed my versions of sbconfig.jar and used a wrong one...
So everything works fine.
Thanks,
Katja -
OSB & WLST: changing operational settings for a proxy service via WLST
Hi all,
we are trying to change the operational settings for a proxy service via WLST.
In details we would like to change the "Logs" level (Monitoring section).
We have a lot of deployed services and our 'deployer people' need an automatic way (via WLST for example) for doing that instead of using the OSB console.
Thanks in advance
ferpHi,
OSB is the Oracle Service Bus. Oracle Service Bus is a configuration-based, policy-driven enterprise service bus.
The OSB is deployed into an Oracle WebLogic Server instance.
OSB uses also WLST functionality provided by WebLogic Server.
Best regards
ferp -
Hi
Whenever I dont want the proxy to consume a message from a queue , I pause consumption of the queue. I want to always resume the consumption manually.
The reason whenever the server is restarted , the queue consumption is resumed automatically. How do I control the resumption manually?
regardsYou can use WLST scripts to set the Operational settings of multiple proxies. Please refer to the below links:
OSB & WLST: about ProxyServiceQuery
http://orasoa.blogspot.com/2011/05/disable-and-enable-osb-proxy-services.html
You can customize the scripts as per your requirement.
Hope this helps.
Thanks,
Patrick -
OSB deployment on managed server
Hello,
We have a OSB clustered environment where managed servres and admin server reside on separate machines. OSB admin server does not have access to database (The architecture does not allow Admin server to connect to DB). As far as my understanding OSB applications/projects have to be targeted on Admin server for deployment even the SB console is accessible via admin server.
How can we use the Oracle OSB WLST deployment scripts for target on the managed servers currently this works only when pointed to the Admin sserver.
If WLSTscript is pointed to the managed server the deployment script throws exception stating 'cannot start Mbean server'
Your help on this greatly appreciated.
Thanks,
PHi Prashant,
OSB apps don't have to be necessary targeted to Admin server. In our project OSB apps are targeted to OSB managed server.
I think reason why you can't deploy it in your case is that there are no OSB components deployed in Admin server. Those components are
deployed to admin server during the installation even if you choose install OSB to separate OSB managed server (they are deployed to both admin and OSB managed servers). I think that's OSB design issue.
During our deployment we recreate domain including OSB apps every time from scratch. It works fine.
Regards,
Milan -
Create a ALSB 3.0 domain using WLST
Hi,
I have created a ALSB domain using config.sh and then I used the following script to create the template
# create doman template
readDomain('/usr/local/bea/user_projects/domains/z2esbadmin')
writeTemplate('/home/was/work/wlst/z2esbadminTemplate.jar')
exit()
The template jar file is created successfully without any warning/error
When I tried to create the domain using the template with the following comand:
createDomain('z2esbadminTemplate.jar','/home/was/work/user_projects/domains/z2esb', 'weblogic', 'weblogic')
exit()
I got the following error message:
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Initializing WebLogic Scripting Tool (WLST) ...
Welcome to WebLogic Server Administration Scripting Shell
Type help() for help on available commands
Error: create() failed. Do dumpStack() to see details.
Problem invoking WLST - Traceback (innermost last):
File "/home/mcas/weblogic/wlst/createEsbDomain.py", line 1, in ?
File "/tmp/WLSTOfflineIni25221.py", line 96, in createDomain
com.bea.plateng.domain.script.jython.WLSTException: com.bea.plateng.domain.script.ScriptException: com.bea.plateng.domain.ValidateException: Property "User name" of User with original name "" is invalid. The property value is duplicated.
at com.bea.plateng.domain.script.jython.CommandExceptionHandler.handleException(CommandExceptionHandler.java:51)
at com.bea.plateng.domain.script.jython.WLScriptContext.handleException(WLScriptContext.java:1468)
at com.bea.plateng.domain.script.jython.WLScriptContext.create(WLScriptContext.java:672)
at com.bea.plateng.domain.script.jython.WLScriptContext.createDomain(WLScriptContext.java:507)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java:160)
at org.python.core.PyMethod.__call__(PyMethod.java:96)
at org.python.core.PyObject.__call__(PyObject.java:248)
at org.python.core.PyObject.invoke(PyObject.java:2016)
at org.python.pycode._pyx5.createDomain$21(/tmp/WLSTOfflineIni25221.py:96)
at org.python.pycode._pyx5.call_function(/tmp/WLSTOfflineIni25221.py)
at org.python.core.PyTableCode.call(PyTableCode.java:208)
at org.python.core.PyTableCode.call(PyTableCode.java:404)
at org.python.core.PyFunction.__call__(PyFunction.java:184)
at org.python.core.PyObject.__call__(PyObject.java:314)
at org.python.pycode._pyx18.f$0(/home/mcas/weblogic/wlst/createEsbDomain.py:1)
at org.python.pycode._pyx18.call_function(/home/mcas/weblogic/wlst/createEsbDomain.py)
at org.python.core.PyTableCode.call(PyTableCode.java:208)
at org.python.core.PyCode.call(PyCode.java:14)
at org.python.core.Py.runCode(Py.java:1135)
at org.python.util.PythonInterpreter.execfile(PythonInterpreter.java:167)
at weblogic.management.scripting.WLST.main(WLST.java:106)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at weblogic.WLST.main(WLST.java:29)
Caused by: com.bea.plateng.domain.script.ScriptException: com.bea.plateng.domain.ValidateException: Property "User name" of User with original name "" is invalid. The property value is duplicated.
at com.bea.plateng.domain.script.ScriptExecutor.create(ScriptExecutor.java:897)
at com.bea.plateng.domain.script.jython.ScriptProxyFactory.deepCreateProxy4SecurityType(ScriptProxyFactory.java:135)
at com.bea.plateng.domain.script.jython.WLScriptContext.create(WLScriptContext.java:646)
... 27 more
Caused by: com.bea.plateng.domain.ValidateException: Property "User name" of User with original name "" is invalid. The property value is duplicated.
at com.bea.plateng.domain.aspect.XBeanConfigAspect.selfValidate(XBeanConfigAspect.java:630)
at com.bea.plateng.domain.aspect.AbstractConfigAspect.validate(AbstractConfigAspect.java:1130)
at com.bea.plateng.domain.aspect.AbstractConfigAspect.selfSetValue(AbstractConfigAspect.java:1615)
at com.bea.plateng.domain.aspect.AbstractConfigAspect.setValueInternal(AbstractConfigAspect.java:1574)
at com.bea.plateng.domain.aspect.AbstractConfigAspect.setValue(AbstractConfigAspect.java:748)
at com.bea.plateng.domain.aspect.AbstractConfigAspect.setValue(AbstractConfigAspect.java:757)
at com.bea.plateng.domain.aspect.FilteredConfigAspect.setValue(FilteredConfigAspect.java:431)
at com.bea.plateng.domain.operation.HTableEditOperation.createSimpleConfigAspects(HTableEditOperation.java:265)
at com.bea.plateng.domain.operation.HTableEditOperation.createSimpleConfigAspects(HTableEditOperation.java:221)
at com.bea.plateng.domain.script.ScriptExecutor.create(ScriptExecutor.java:873)
... 29 more
Caused by: java.beans.PropertyVetoException: The property value is duplicated.
at com.bea.plateng.domain.event.aspect.UniqueValueValidateListener.valueChanged(UniqueValueValidateListener.java:127)
at com.bea.plateng.domain.event.aspect.ConfigAspectValueListener.vetoableChange(ConfigAspectValueListener.java:138)
at com.bea.plateng.common.comdev.MVetoableChangeSupport.fireVetoableChange(MVetoableChangeSupport.java:189)
at com.bea.plateng.common.comdev.MVetoableChangeSupport.fireVetoableChange(MVetoableChangeSupport.java:156)
at com.bea.plateng.common.comdev.MVetoableChangeSupport.fireVetoableChange(MVetoableChangeSupport.java:139)
at com.bea.plateng.domain.aspect.XBeanConfigAspect.selfValidate(XBeanConfigAspect.java:620)
... 38 more
com.bea.plateng.domain.script.jython.WLSTException: com.bea.plateng.domain.script.jython.WLSTException: com.bea.plateng.domain.script.ScriptException: com.bea.plateng.domain.ValidateException: Property "User name" of User with original name "" is invalid. The property value is duplicated.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
I did exactly the same thing for a normal weblogic domain (not alsb) and it works fine. Do I have to do something different for creating ALSB 3.0 domain?
Thanks,
NathanWell, we've had exactly the same issues.
From our experience even the most trivial tasks involving ALSB/OSB, WLST and Templates fail. Not just a single error, but every time we've tried something different to work around an issue we came across the script blew up with yet another error. After a couple of painful days we came to the conclusion that at least with WL10/ALSB3 templates and scripting are just too premature and too buggy to be of any use.
And at least from the ALSB Release Notes and Metalink it doesn't look like these issues have been addressed with subsequent releases.
We've resorted to creating the domain from scratch instead of using templates of our own domains created with the config wizard.
Cheers,
Jan -
OSB - ALSB / WLST / Security / add entry with WLST in Access Control
Hello,
I try to reproduce with WLST script the input from the consol to declare user on Access Control proxy (security).
sbconsol->$Proxy Service->Security->General Confiruration->Access Control->Transport Access Control->Add Conditions
* First implementation without success with the com.bea.wli.sb.security.management.configuration.ServiceSecurityConfigurationMBean : accessControlSecurity1()
* Second try with the service definition of the proxy service but cannot parse with Xpath accessControl Security2()
any idee ???
test case :
prerequisit
create an ALSB domain 10.3 (admin one with username='weblogic' password='weblogic' url='t3://localhost:7001') and create a proxy service on the default project
conf/setEnv.cmd
@CLS
@echo ON
@set BEA_HOME=D:\PRODUCT\MIDDLEWARE\SOA\OSB_10.3
@set WL_HOME=%BEA_HOME%\wlserver_10.3
@set OSB_HOME=%BEA_HOME%\osb_10.3
@set SCRIPTING_HOME=E:\PROJETS\RECURANT\EDF\linky\WLST\WORKING\Security
@set OSB_LIB=%OSB_HOME%/lib/sb-kernel-api.jar;%BEA_HOME%/modules/com.bea.alsb.statistics_1.0.1.0.jar;%OSB_HOME%/lib/sb-kernel-resources.jar;%OSB_HOME%/lib/sb-kernel-common.jar;%OSB_HOME%/lib/sb-kernel-impl.jar;%OSB_HOME%\lib\sb-security.jar;%OSB_HOME%/modules/com.bea.common.configfwk_1.3.0.0.jar;%BEA_HOME%/modules/com.bea.common.configfwk_1.2.0.0.jar;%BEA_HOME%/modules/com.bea.common.configfwk_1.2.1.0.jar;%OSB_HOME%/lib/modules/com.bea.alsb.resources.archive.jar;
@set TOOL_LIB=%SCRIPTING_HOME%\lib\log4j-1.2.15.jar;%SCRIPTING_HOME%\lib\jsch-0.1.43.jar;%SCRIPTING_HOME%\lib\db2jcc.jar
@set CLASSPATH=%OSB_LIB%;%TOOL_LIB%;%CLASSPATH%
@set CLASSPATH=%SCRIPTING_HOME%\lib\db2jcc.jar;%TOOL_LIB%;%CLASSPATH%
@set MODULE_LIB=%SCRIPTING_HOME%\lib
@call %WL_HOME%\server\bin\setWLSEnv.cmd > nul 2<&1
launch.cmd
@CLS
@echo OFF
@SETLOCAL
@call "conf\setEnv.cmd" > nul 2<&1
set PWD=%~dp0
%JAVA_HOME%\bin\java -Dmodule.lib=%MODULE_LIB% weblogic.WLST -skipWLSModuleScanning lib/security.py
lib/security.py
from com.bea.wli.monitoring import StatisticType
from java.util import HashMap
from java.util import HashSet
from java.util import ArrayList
from java.util import Collections
from java.io import FileInputStream
from java.io import FileOutputStream
from java.lang import String
from java.lang import Boolean
from com.bea.wli.sb.util import EnvValueTypes
from com.bea.wli.config.env import EnvValueQuery;
from com.bea.wli.config import Ref
from com.bea.wli.config.customization import Customization
from com.bea.wli.config.customization import EnvValueCustomization
from com.bea.wli.config.customization import FindAndReplaceCustomization
from com.bea.wli.sb.management.configuration import SessionManagementMBean
from com.bea.wli.sb.management.configuration import ALSBConfigurationMBean
from com.bea.wli.sb.management.query import BusinessServiceQuery
from com.bea.wli.sb.management.query import ProxyServiceQuery
from com.bea.wli.sb.management.configuration import ServiceConfigurationMBean
import os
# before, create an ALSB domain 10.3 with a proxy service in the default project and add an Acces Control Policy in the consol
# sbconsol->Project Explorer->default->${proxy service}->Security->Access Control->Create Session->Add Conditions->User->USR_1->Add
# when we try to modify the Acces Control Policy of the proxy service with the ServiceSecurityConfigurationMBean
def accessControlSecurity1( domain_name ):
# connection
print "\n\n\n***********************************************************************************************"
connect( 'weblogic', 'weblogic', 't3://localhost:7001')
domainRuntime()
# create a session
sessionName = String("SessionScript"+Long(System.currentTimeMillis()).toString())
SessionMBean = findService( SessionManagementMBean.NAME ,SessionManagementMBean.TYPE)
SessionMBean.createSession(sessionName)
# get the ServiceSecurityConfigurationMBean
serviceSecurityConfigurationMBean = findService(String("ServiceSecurityConfiguration.").concat(sessionName), "com.bea.wli.sb.security.management.configuration.ServiceSecurityConfigurationMBean")
# get the XACMLAuthorizer
working_directory=pwd()
serverConfig()
xacmlAuthorizer = cd('/SecurityConfiguration/%s/Realms/myrealm/Authorizers/XACMLAuthorizer' % domain_name )
cd(working_directory)
domainRuntime()
# get service ref
ConfigurationMBean = findService(String("ALSBConfiguration.").concat(sessionName), "com.bea.wli.sb.management.configuration.ALSBConfigurationMBean")
bsQuery = ProxyServiceQuery()
bsQuery.setPath("default/*")
refs = ConfigurationMBean.getRefs(bsQuery)
for ref in refs:
print 'ref=%s'%ref
# use the security Mbean to add : USER_A,USER_B,USER_C to the policy
policyHolder = serviceSecurityConfigurationMBean.newAccessControlPolicyHolderInstance(xacmlAuthorizer)
policyHolder.setPolicyExpression("Usr(USER_A,USER_B,USER_C)")
policyScope = serviceSecurityConfigurationMBean.newDefaultMessagePolicyScope(ref)
serviceSecurityConfigurationMBean.setAccessControlPolicy(policyScope,policyHolder)
# print the service definition
servConfMBean = findService( "%s.%s" % (ServiceConfigurationMBean.NAME, sessionName), ServiceConfigurationMBean.TYPE)
serviceDefinition = servConfMBean.getServiceDefinition(ref)
print serviceDefinition
# we can see the security entry in the service definition has follow
# <xml-fragment xmlns:ser="http://www.bea.com/wli/sb/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tran="http://www.bea.com/wli/sb/transports" xmlns:env="http://www.bea.com/wli/config/env">
# <ser:coreEntry isProxy="true" isEnabled="true" isAutoPublish="false">
# <ser:description/>
# <ser:security>
# <con:access-control-policies xmlns:con="http://www.bea.com/wli/sb/services/security/config">
# <con:message-level-policies>
# <con1:default-policy xsi:type="con:ProviderPolicyContainerType" xmlns:con="http://www.bea.com/wli/sb/security/accesscontrol/config" xmlns:con1="http://www.bea.com/wli/sb/services/security/config">
# <con:policy provider-id="XACMLAuthorizer">
# <con:policy-expression>Usr(USER_A,USER_B,USER_C)</con:policy-expression>
# </con:policy>
# </con1:default-policy>
# </con:message-level-policies>
# </con:access-control-policies>
# </ser:security>
# but when we commit
SessionMBean.activateSession(sessionName, "description for session activation")
# we got the following exception
# Unexpected error: com.bea.wli.config.session.SessionConflictException
# No stack trace available.
# Problem invoking WLST - Traceback (innermost last):
# File "E:\PROJETS\RECURANT\EDF\linky\WLST\WORKING\Security\lib\security.py", line 246, in ?
# File "E:\PROJETS\RECURANT\EDF\linky\WLST\WORKING\Security\lib\security.py", line 105, in accessControlSecurity1
# com.bea.wli.config.session.SessionConflictException: Conflicts for session SessionScript1363339726764
# [Non-Critical] Concurrent Modification Conflicts
# NONE
# [Critical] Resources with validation errors
# 1 - ProxyService test/PS_TEST_bis CannotCommit
# + CannotCommit [OSB Security:386836]Unnecessary proxy wide message access control policy found for service "test/PS_TEST_bis". Hint: The service is neither an active security
# intermediary nor has custom authentication enabled. ServiceDiagnosticLocation[SECURITY_TAB]:DiagnosticLocation:<con:message-level-policies xmlns:ser="http://www.bea.com/wli/sb/services" xml
# ns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tran="http://www.bea.com/wli/sb/transports" xmlns:env="http://www.bea.com/wli/config/env" xmlns:con="http://www.bea.com/wli/sb/services/security/config">
# <con1:default-policy xsi:type="con:ProviderPolicyContainerType" xmlns:con="http://www.bea.com/wli/sb/security/accesscontrol/config" xmlns:con1="http://www.bea.com/wli/sb/services/security/
# config">
# <con:policy provider-id="XACMLAuthorizer">
# <con:policy-expression>Usr(USER_A,USER_B,USER_C)</con:policy-expression>
# </con:policy>
# </con1:default-policy>
# </con:message-level-policies>
# [Info] Informational messages
# NONE
# at com.bea.wli.config.session.SessionManager.commitSessionUnlocked(SessionManager.java:358)
# at com.bea.wli.config.session.SessionManager.commitSession(SessionManager.java:339)
# at com.bea.wli.config.session.SessionManager.commitSession(SessionManager.java:297)
# at com.bea.wli.config.session.SessionManager.commitSession(SessionManager.java:306)
disconnect()
# when we try to modify the Acces Control Policy of the proxy service whith the service XML definition
def accessControlSecurity2( domain_name ):
# connection
print "\n\n\n***********************************************************************************************"
connect( 'weblogic', 'weblogic', 't3://localhost:7001')
domainRuntime()
# create a session
sessionName = String("SessionScript"+Long(System.currentTimeMillis()).toString())
SessionMBean = findService( SessionManagementMBean.NAME ,SessionManagementMBean.TYPE)
SessionMBean.createSession(sessionName)
# get service ref
ConfigurationMBean = findService(String("ALSBConfiguration.").concat(sessionName), "com.bea.wli.sb.management.configuration.ALSBConfigurationMBean")
bsQuery = ProxyServiceQuery()
bsQuery.setPath("default/*")
refs = ConfigurationMBean.getRefs(bsQuery)
for ref in refs:
print 'ref=%s'%ref
servConfMBean = findService( "%s.%s" % (ServiceConfigurationMBean.NAME, sessionName), ServiceConfigurationMBean.TYPE)
serviceDefinition = servConfMBean.getServiceDefinition(ref)
# parsing the proxy definition
nsSer = "declare namespace ser='http://www.bea.com/wli/sb/services'"
nsXsi = "declare namespace xsi='http://www.w3.org/2001/XMLSchema-instance'"
nsTran = "declare namespace tran='http://www.bea.com/wli/sb/transports'"
nsEnv = "declare namespace env='http://www.bea.com/wli/config/env'"
nsCon = "declare namespace con='http://www.bea.com/wli/sb/services/security/config'"
nsCon1 = "declare namespace con1='http://www.bea.com/wli/sb/services/security/config'"
# when we try to parse the following Xpath Expression, it' working but not sufficent to access the <con:policy-expression> element
confPath = "ser:coreEntry/ser:security/con:access-control-policies/con1:transport-level-policy"
confElem = serviceDefinition.selectPath(nsSer + nsXsi + nsTran + nsEnv + nsCon + nsCon1 + confPath )
print "WORKING{%s}" % confElem
# get the result
# <xml-fragment xsi:type="con:ProviderPolicyContainerType" xmlns:con="http://www.bea.com/wli/sb/security/accesscontrol/config" xmlns:con1="http://www.bea.com/wli/sb/services/security/config" xmlns:ser="http://www.bea.com/wli/sb/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tran="http://www.bea.com/wli/sb/transports" xmlns:env="http://www.bea.com/wli/config/env">
# <con:policy provider-id="XACMLAuthorizer">
# <con:policy-expression>Usr(USER_1,USER_2,USER_3)</con:policy-expression>
# </con:policy>
# </xml-fragment>
# and when we try to acces the <con:policy> element whith the following Xpath expression we got an empty result
confPath = "ser:coreEntry/ser:security/con:access-control-policies/con1:transport-level-policy/con:policy"
confElem = serviceDefinition.selectPath(nsSer + nsXsi + nsTran + nsEnv + nsCon + nsCon1 + confPath )
print "DON'T WORKING{%s}" % confElem
# get empty result
# array([], org.apache.xmlbeans.XmlObject)
# want to modify the value like this on the <con:policy-expression> but cannot reach it ...
#confValue="Usr(USER_A,USER_B,USER_C)"
#confElem.setStringValue(confValue)
# commit
SessionMBean.activateSession(sessionName, "description for session activation")
disconnect
# print the service definition
def printServiceDefinition( domain_name ):
# connection
connect( 'weblogic', 'weblogic', 't3://localhost:7001')
domainRuntime()
# create a session
sessionName = String("SessionScript"+Long(System.currentTimeMillis()).toString())
SessionMBean = findService( SessionManagementMBean.NAME ,SessionManagementMBean.TYPE)
SessionMBean.createSession(sessionName)
# get service ref
ConfigurationMBean = findService(String("ALSBConfiguration.").concat(sessionName), "com.bea.wli.sb.management.configuration.ALSBConfigurationMBean")
bsQuery = ProxyServiceQuery()
bsQuery.setPath("default/*")
refs = ConfigurationMBean.getRefs(bsQuery)
for ref in refs:
print 'ref=%s'%ref
servConfMBean = findService( "%s.%s" % (ServiceConfigurationMBean.NAME, sessionName), ServiceConfigurationMBean.TYPE)
serviceDefinition = servConfMBean.getServiceDefinition(ref)
servConfMBean = findService( "%s.%s" % (ServiceConfigurationMBean.NAME, sessionName), ServiceConfigurationMBean.TYPE)
serviceDefinition = servConfMBean.getServiceDefinition(ref)
print serviceDefinition
# commit
SessionMBean.activateSession(sessionName, "description for session activation")
disconnect
#accessControlSecurity1('cluster_domain')
accessControlSecurity2('cluster_domain')Hello,
I try to reproduce with WLST script the input from the consol to declare user on Access Control proxy (security).
sbconsol->$Proxy Service->Security->General Confiruration->Access Control->Transport Access Control->Add Conditions
* First implementation without success with the com.bea.wli.sb.security.management.configuration.ServiceSecurityConfigurationMBean : accessControlSecurity1()
* Second try with the service definition of the proxy service but cannot parse with Xpath accessControl Security2()
any idee ???
test case :
prerequisit
create an ALSB domain 10.3 (admin one with username='weblogic' password='weblogic' url='t3://localhost:7001') and create a proxy service on the default project
conf/setEnv.cmd
@CLS
@echo ON
@set BEA_HOME=D:\PRODUCT\MIDDLEWARE\SOA\OSB_10.3
@set WL_HOME=%BEA_HOME%\wlserver_10.3
@set OSB_HOME=%BEA_HOME%\osb_10.3
@set SCRIPTING_HOME=E:\PROJETS\RECURANT\EDF\linky\WLST\WORKING\Security
@set OSB_LIB=%OSB_HOME%/lib/sb-kernel-api.jar;%BEA_HOME%/modules/com.bea.alsb.statistics_1.0.1.0.jar;%OSB_HOME%/lib/sb-kernel-resources.jar;%OSB_HOME%/lib/sb-kernel-common.jar;%OSB_HOME%/lib/sb-kernel-impl.jar;%OSB_HOME%\lib\sb-security.jar;%OSB_HOME%/modules/com.bea.common.configfwk_1.3.0.0.jar;%BEA_HOME%/modules/com.bea.common.configfwk_1.2.0.0.jar;%BEA_HOME%/modules/com.bea.common.configfwk_1.2.1.0.jar;%OSB_HOME%/lib/modules/com.bea.alsb.resources.archive.jar;
@set TOOL_LIB=%SCRIPTING_HOME%\lib\log4j-1.2.15.jar;%SCRIPTING_HOME%\lib\jsch-0.1.43.jar;%SCRIPTING_HOME%\lib\db2jcc.jar
@set CLASSPATH=%OSB_LIB%;%TOOL_LIB%;%CLASSPATH%
@set CLASSPATH=%SCRIPTING_HOME%\lib\db2jcc.jar;%TOOL_LIB%;%CLASSPATH%
@set MODULE_LIB=%SCRIPTING_HOME%\lib
@call %WL_HOME%\server\bin\setWLSEnv.cmd > nul 2<&1
launch.cmd
@CLS
@echo OFF
@SETLOCAL
@call "conf\setEnv.cmd" > nul 2<&1
set PWD=%~dp0
%JAVA_HOME%\bin\java -Dmodule.lib=%MODULE_LIB% weblogic.WLST -skipWLSModuleScanning lib/security.py
lib/security.py
from com.bea.wli.monitoring import StatisticType
from java.util import HashMap
from java.util import HashSet
from java.util import ArrayList
from java.util import Collections
from java.io import FileInputStream
from java.io import FileOutputStream
from java.lang import String
from java.lang import Boolean
from com.bea.wli.sb.util import EnvValueTypes
from com.bea.wli.config.env import EnvValueQuery;
from com.bea.wli.config import Ref
from com.bea.wli.config.customization import Customization
from com.bea.wli.config.customization import EnvValueCustomization
from com.bea.wli.config.customization import FindAndReplaceCustomization
from com.bea.wli.sb.management.configuration import SessionManagementMBean
from com.bea.wli.sb.management.configuration import ALSBConfigurationMBean
from com.bea.wli.sb.management.query import BusinessServiceQuery
from com.bea.wli.sb.management.query import ProxyServiceQuery
from com.bea.wli.sb.management.configuration import ServiceConfigurationMBean
import os
# before, create an ALSB domain 10.3 with a proxy service in the default project and add an Acces Control Policy in the consol
# sbconsol->Project Explorer->default->${proxy service}->Security->Access Control->Create Session->Add Conditions->User->USR_1->Add
# when we try to modify the Acces Control Policy of the proxy service with the ServiceSecurityConfigurationMBean
def accessControlSecurity1( domain_name ):
# connection
print "\n\n\n***********************************************************************************************"
connect( 'weblogic', 'weblogic', 't3://localhost:7001')
domainRuntime()
# create a session
sessionName = String("SessionScript"+Long(System.currentTimeMillis()).toString())
SessionMBean = findService( SessionManagementMBean.NAME ,SessionManagementMBean.TYPE)
SessionMBean.createSession(sessionName)
# get the ServiceSecurityConfigurationMBean
serviceSecurityConfigurationMBean = findService(String("ServiceSecurityConfiguration.").concat(sessionName), "com.bea.wli.sb.security.management.configuration.ServiceSecurityConfigurationMBean")
# get the XACMLAuthorizer
working_directory=pwd()
serverConfig()
xacmlAuthorizer = cd('/SecurityConfiguration/%s/Realms/myrealm/Authorizers/XACMLAuthorizer' % domain_name )
cd(working_directory)
domainRuntime()
# get service ref
ConfigurationMBean = findService(String("ALSBConfiguration.").concat(sessionName), "com.bea.wli.sb.management.configuration.ALSBConfigurationMBean")
bsQuery = ProxyServiceQuery()
bsQuery.setPath("default/*")
refs = ConfigurationMBean.getRefs(bsQuery)
for ref in refs:
print 'ref=%s'%ref
# use the security Mbean to add : USER_A,USER_B,USER_C to the policy
policyHolder = serviceSecurityConfigurationMBean.newAccessControlPolicyHolderInstance(xacmlAuthorizer)
policyHolder.setPolicyExpression("Usr(USER_A,USER_B,USER_C)")
policyScope = serviceSecurityConfigurationMBean.newDefaultMessagePolicyScope(ref)
serviceSecurityConfigurationMBean.setAccessControlPolicy(policyScope,policyHolder)
# print the service definition
servConfMBean = findService( "%s.%s" % (ServiceConfigurationMBean.NAME, sessionName), ServiceConfigurationMBean.TYPE)
serviceDefinition = servConfMBean.getServiceDefinition(ref)
print serviceDefinition
# we can see the security entry in the service definition has follow
# <xml-fragment xmlns:ser="http://www.bea.com/wli/sb/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tran="http://www.bea.com/wli/sb/transports" xmlns:env="http://www.bea.com/wli/config/env">
# <ser:coreEntry isProxy="true" isEnabled="true" isAutoPublish="false">
# <ser:description/>
# <ser:security>
# <con:access-control-policies xmlns:con="http://www.bea.com/wli/sb/services/security/config">
# <con:message-level-policies>
# <con1:default-policy xsi:type="con:ProviderPolicyContainerType" xmlns:con="http://www.bea.com/wli/sb/security/accesscontrol/config" xmlns:con1="http://www.bea.com/wli/sb/services/security/config">
# <con:policy provider-id="XACMLAuthorizer">
# <con:policy-expression>Usr(USER_A,USER_B,USER_C)</con:policy-expression>
# </con:policy>
# </con1:default-policy>
# </con:message-level-policies>
# </con:access-control-policies>
# </ser:security>
# but when we commit
SessionMBean.activateSession(sessionName, "description for session activation")
# we got the following exception
# Unexpected error: com.bea.wli.config.session.SessionConflictException
# No stack trace available.
# Problem invoking WLST - Traceback (innermost last):
# File "E:\PROJETS\RECURANT\EDF\linky\WLST\WORKING\Security\lib\security.py", line 246, in ?
# File "E:\PROJETS\RECURANT\EDF\linky\WLST\WORKING\Security\lib\security.py", line 105, in accessControlSecurity1
# com.bea.wli.config.session.SessionConflictException: Conflicts for session SessionScript1363339726764
# [Non-Critical] Concurrent Modification Conflicts
# NONE
# [Critical] Resources with validation errors
# 1 - ProxyService test/PS_TEST_bis CannotCommit
# + CannotCommit [OSB Security:386836]Unnecessary proxy wide message access control policy found for service "test/PS_TEST_bis". Hint: The service is neither an active security
# intermediary nor has custom authentication enabled. ServiceDiagnosticLocation[SECURITY_TAB]:DiagnosticLocation:<con:message-level-policies xmlns:ser="http://www.bea.com/wli/sb/services" xml
# ns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tran="http://www.bea.com/wli/sb/transports" xmlns:env="http://www.bea.com/wli/config/env" xmlns:con="http://www.bea.com/wli/sb/services/security/config">
# <con1:default-policy xsi:type="con:ProviderPolicyContainerType" xmlns:con="http://www.bea.com/wli/sb/security/accesscontrol/config" xmlns:con1="http://www.bea.com/wli/sb/services/security/
# config">
# <con:policy provider-id="XACMLAuthorizer">
# <con:policy-expression>Usr(USER_A,USER_B,USER_C)</con:policy-expression>
# </con:policy>
# </con1:default-policy>
# </con:message-level-policies>
# [Info] Informational messages
# NONE
# at com.bea.wli.config.session.SessionManager.commitSessionUnlocked(SessionManager.java:358)
# at com.bea.wli.config.session.SessionManager.commitSession(SessionManager.java:339)
# at com.bea.wli.config.session.SessionManager.commitSession(SessionManager.java:297)
# at com.bea.wli.config.session.SessionManager.commitSession(SessionManager.java:306)
disconnect()
# when we try to modify the Acces Control Policy of the proxy service whith the service XML definition
def accessControlSecurity2( domain_name ):
# connection
print "\n\n\n***********************************************************************************************"
connect( 'weblogic', 'weblogic', 't3://localhost:7001')
domainRuntime()
# create a session
sessionName = String("SessionScript"+Long(System.currentTimeMillis()).toString())
SessionMBean = findService( SessionManagementMBean.NAME ,SessionManagementMBean.TYPE)
SessionMBean.createSession(sessionName)
# get service ref
ConfigurationMBean = findService(String("ALSBConfiguration.").concat(sessionName), "com.bea.wli.sb.management.configuration.ALSBConfigurationMBean")
bsQuery = ProxyServiceQuery()
bsQuery.setPath("default/*")
refs = ConfigurationMBean.getRefs(bsQuery)
for ref in refs:
print 'ref=%s'%ref
servConfMBean = findService( "%s.%s" % (ServiceConfigurationMBean.NAME, sessionName), ServiceConfigurationMBean.TYPE)
serviceDefinition = servConfMBean.getServiceDefinition(ref)
# parsing the proxy definition
nsSer = "declare namespace ser='http://www.bea.com/wli/sb/services'"
nsXsi = "declare namespace xsi='http://www.w3.org/2001/XMLSchema-instance'"
nsTran = "declare namespace tran='http://www.bea.com/wli/sb/transports'"
nsEnv = "declare namespace env='http://www.bea.com/wli/config/env'"
nsCon = "declare namespace con='http://www.bea.com/wli/sb/services/security/config'"
nsCon1 = "declare namespace con1='http://www.bea.com/wli/sb/services/security/config'"
# when we try to parse the following Xpath Expression, it' working but not sufficent to access the <con:policy-expression> element
confPath = "ser:coreEntry/ser:security/con:access-control-policies/con1:transport-level-policy"
confElem = serviceDefinition.selectPath(nsSer + nsXsi + nsTran + nsEnv + nsCon + nsCon1 + confPath )
print "WORKING{%s}" % confElem
# get the result
# <xml-fragment xsi:type="con:ProviderPolicyContainerType" xmlns:con="http://www.bea.com/wli/sb/security/accesscontrol/config" xmlns:con1="http://www.bea.com/wli/sb/services/security/config" xmlns:ser="http://www.bea.com/wli/sb/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tran="http://www.bea.com/wli/sb/transports" xmlns:env="http://www.bea.com/wli/config/env">
# <con:policy provider-id="XACMLAuthorizer">
# <con:policy-expression>Usr(USER_1,USER_2,USER_3)</con:policy-expression>
# </con:policy>
# </xml-fragment>
# and when we try to acces the <con:policy> element whith the following Xpath expression we got an empty result
confPath = "ser:coreEntry/ser:security/con:access-control-policies/con1:transport-level-policy/con:policy"
confElem = serviceDefinition.selectPath(nsSer + nsXsi + nsTran + nsEnv + nsCon + nsCon1 + confPath )
print "DON'T WORKING{%s}" % confElem
# get empty result
# array([], org.apache.xmlbeans.XmlObject)
# want to modify the value like this on the <con:policy-expression> but cannot reach it ...
#confValue="Usr(USER_A,USER_B,USER_C)"
#confElem.setStringValue(confValue)
# commit
SessionMBean.activateSession(sessionName, "description for session activation")
disconnect
# print the service definition
def printServiceDefinition( domain_name ):
# connection
connect( 'weblogic', 'weblogic', 't3://localhost:7001')
domainRuntime()
# create a session
sessionName = String("SessionScript"+Long(System.currentTimeMillis()).toString())
SessionMBean = findService( SessionManagementMBean.NAME ,SessionManagementMBean.TYPE)
SessionMBean.createSession(sessionName)
# get service ref
ConfigurationMBean = findService(String("ALSBConfiguration.").concat(sessionName), "com.bea.wli.sb.management.configuration.ALSBConfigurationMBean")
bsQuery = ProxyServiceQuery()
bsQuery.setPath("default/*")
refs = ConfigurationMBean.getRefs(bsQuery)
for ref in refs:
print 'ref=%s'%ref
servConfMBean = findService( "%s.%s" % (ServiceConfigurationMBean.NAME, sessionName), ServiceConfigurationMBean.TYPE)
serviceDefinition = servConfMBean.getServiceDefinition(ref)
servConfMBean = findService( "%s.%s" % (ServiceConfigurationMBean.NAME, sessionName), ServiceConfigurationMBean.TYPE)
serviceDefinition = servConfMBean.getServiceDefinition(ref)
print serviceDefinition
# commit
SessionMBean.activateSession(sessionName, "description for session activation")
disconnect
#accessControlSecurity1('cluster_domain')
accessControlSecurity2('cluster_domain') -
Creation of Customisation file from WLST Script in OSB
Hi,
Please help in creating Customisation file in OSB from WLST ScriptsHi,
Please refer -
Create Customization File in OSB 10g with WLST script
http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/deploy/config_appx.html
http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/javadoc/com/bea/wli/config/customization/Customization.html
Regards,
Anuj -
Creating SessionMBean error while deploying OSB through WLSt script
Hi All,
I am trying to deploy my OSB by using WLST scripts.
After setting the required properties in files,I ran the import.py script.But I got an error while creating an session bean
I have pasted the whole stcak here.It is going fine till creating a session.After that it is failing:
Any pointers in this regard will be helpful.
****************************the stack************************88
Your environment has been set.
CLASSPATH=E:\Oracle\Middleware\patch_wls1033\profiles\default\sys_manifest_class
path\weblogic_patch.jar;E:\Oracle\Middleware\patch_oepe1033\profiles\default\sys
manifestclasspath\weblogic_patch.jar;E:\Oracle\Middleware\patch_ocp353\profile
s\default\sys_manifest_classpath\weblogic_patch.jar;E:\Oracle\Middleware\jrockit
_160_17_R28.0.0-679\lib\tools.jar;E:\Oracle\Middleware\wlserver_10.3\server\lib\
weblogic_sp.jar;E:\Oracle\Middleware\wlserver_10.3\server\lib\weblogic.jar;E:\Or
acle\Middleware\modules\features\weblogic.server.modules_10.3.3.0.jar;E:\Oracle\
Middleware\wlserver_10.3\server\lib\webservices.jar;E:\Oracle\Middleware\modules
\org.apache.ant_1.7.1/lib/ant-all.jar;E:\Oracle\Middleware\modules\net.sf.antcon
trib_1.1.0.0_1-0b2/lib/ant-contrib.jar;;E:\Oracle\Middleware/Oracle_OSB1/lib/sb-
kernel-api.jar;E:\Oracle\Middleware/Oracle_OSB1/modules/com.bea.common.configfwk
_1.3.0.0.jar;E:\Oracle\Middleware/modules/com.bea.common.configfwk.wlinterop_10.
3.1.0
Apache Ant version 1.7.1 compiled on June 27 2008
Buildfile: ..\scripts\build.xml
Detected Java version: 1.6 in: E:\Oracle\Middleware\jrockit_160_17_R28.0.0-679\j
re
Detected OS: Windows XP
parsing buildfile C:\osb\build\scripts\build.xml with URI = file:/C:/osb/build/s
cripts/build.xml
Project base dir set to: C:\osb\build\scripts
[antlib:org.apache.tools.ant] Could not load definitions from resource org/apach
e/tools/ant/antlib.xml. It could not be found.
[property] Loading Environment env.
[property] Loading C:\osb\build\dev\ant.properties
Build sequence for target(s) `import' is [import]
Complete build sequence is [import, ]
import:
[echo] importscript: c:/osb/build/scripts/import.py
[echo] importconfig: c:/osb/build/dev/import.properties
dropping E:\Oracle\Middleware\patch_wls1033\profiles\default\sys_manifest_classp
ath\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\patch_oepe1033\profiles\default\sys_manifest_class
path\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\patch_ocp353\profiles\default\sys_manifest_classpa
th\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\wlserver_10.3\server\lib\weblogic_sp.jar from path
as it doesn't exist
dropping E:\Oracle\Middleware\modules\com.bea.common.configfwk.wlinterop_10.3.1.
0 from path as it doesn't exist
dropping E:\Oracle\Middleware\patch_wls1033\profiles\default\sys_manifest_classp
ath\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\patch_oepe1033\profiles\default\sys_manifest_class
path\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\patch_ocp353\profiles\default\sys_manifest_classpa
th\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\wlserver_10.3\server\lib\weblogic_sp.jar from path
as it doesn't exist
dropping E:\Oracle\Middleware\modules\com.bea.common.configfwk.wlinterop_10.3.1.
0 from path as it doesn't exist
[wlst] <WLSTTask> Executing the command line :
[wlst] E:\Oracle\Middleware\jrockit_160_17_R28.0.0-679\jre\bin\java.exe -Dd
ebug=true -DfailOnError=true -DexecuteScriptBeforeFile=true -DpropertiesFile=c:/
osb/build/dev/import.properties -DfileName=c:/osb/build/scripts/import.py -class
path E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-launcher.jar;E:\O
racle\Middleware\jrockit_160_17_R28.0.0-679\lib\tools.jar;E:\Oracle\Middleware\w
lserver_10.3\server\lib\weblogic.jar;E:\Oracle\Middleware\modules\features\weblo
gic.server.modules_10.3.3.0.jar;E:\Oracle\Middleware\wlserver_10.3\server\lib\we
bservices.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-all.jar;
E:\Oracle\Middleware\modules\net.sf.antcontrib_1.1.0.0_1-0b2\lib\ant-contrib.jar
;E:\Oracle\Middleware\Oracle_OSB1\lib\sb-kernel-api.jar;E:\Oracle\Middleware\Ora
cle_OSB1\modules\com.bea.common.configfwk_1.3.0.0.jar;E:\Oracle\Middleware\modul
es\org.apache.ant_1.7.1\lib\ant-antlr.jar;E:\Oracle\Middleware\modules\org.apach
e.ant_1.7.1\lib\ant-apache-bcel.jar;E:\Oracle\Middleware\modules\org.apache.ant_
1.7.1\lib\ant-apache-bsf.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\l
ib\ant-apache-log4j.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\an
t-apache-oro.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-apach
e-regexp.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-apache-re
solver.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-commons-log
ging.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-commons-net.j
ar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-jai.jar;E:\Oracle\M
iddleware\modules\org.apache.ant_1.7.1\lib\ant-javamail.jar;E:\Oracle\Middleware
\modules\org.apache.ant_1.7.1\lib\ant-jdepend.jar;E:\Oracle\Middleware\modules\o
rg.apache.ant_1.7.1\lib\ant-jmf.jar;E:\Oracle\Middleware\modules\org.apache.ant_
1.7.1\lib\ant-jsch.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant
-junit.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-netrexx.jar
;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-nodeps.jar;E:\Oracle\
Middleware\modules\org.apache.ant_1.7.1\lib\ant-starteam.jar;E:\Oracle\Middlewar
e\modules\org.apache.ant_1.7.1\lib\ant-stylebook.jar;E:\Oracle\Middleware\module
s\org.apache.ant_1.7.1\lib\ant-swing.jar;E:\Oracle\Middleware\modules\org.apache
.ant_1.7.1\lib\ant-testutil.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.
1\lib\ant-trax.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-web
logic.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant.jar;E:\Oracl
e\Middleware\modules\org.apache.ant_1.7.1\lib\xercesImpl.jar;E:\Oracle\Middlewar
e\modules\org.apache.ant_1.7.1\lib\xml-apis.jar weblogic.management.scripting.WL
STInterpreterInvoker
dropping E:\Oracle\Middleware\patch_wls1033\profiles\default\sys_manifest_classp
ath\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\patch_oepe1033\profiles\default\sys_manifest_class
path\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\patch_ocp353\profiles\default\sys_manifest_classpa
th\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\wlserver_10.3\server\lib\weblogic_sp.jar from path
as it doesn't exist
dropping E:\Oracle\Middleware\modules\com.bea.common.configfwk.wlinterop_10.3.1.
0 from path as it doesn't exist
dropping E:\Oracle\Middleware\patch_wls1033\profiles\default\sys_manifest_classp
ath\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\patch_oepe1033\profiles\default\sys_manifest_class
path\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\patch_ocp353\profiles\default\sys_manifest_classpa
th\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\wlserver_10.3\server\lib\weblogic_sp.jar from path
as it doesn't exist
dropping E:\Oracle\Middleware\modules\com.bea.common.configfwk.wlinterop_10.3.1.
0 from path as it doesn't exist
[wlst] Executing 'E:\Oracle\Middleware\jrockit_160_17_R28.0.0-679\jre\bin\j
ava.exe' with arguments:
[wlst] '-Ddebug=true'
[wlst] '-DfailOnError=true'
[wlst] '-DexecuteScriptBeforeFile=true'
[wlst] '-DpropertiesFile=c:/osb/build/dev/import.properties'
[wlst] '-DfileName=c:/osb/build/scripts/import.py'
[wlst] '-classpath'
[wlst] 'E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-launcher.
jar;E:\Oracle\Middleware\jrockit_160_17_R28.0.0-679\lib\tools.jar;E:\Oracle\Midd
leware\wlserver_10.3\server\lib\weblogic.jar;E:\Oracle\Middleware\modules\featur
es\weblogic.server.modules_10.3.3.0.jar;E:\Oracle\Middleware\wlserver_10.3\serve
r\lib\webservices.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-
all.jar;E:\Oracle\Middleware\modules\net.sf.antcontrib_1.1.0.0_1-0b2\lib\ant-con
trib.jar;E:\Oracle\Middleware\Oracle_OSB1\lib\sb-kernel-api.jar;E:\Oracle\Middle
ware\Oracle_OSB1\modules\com.bea.common.configfwk_1.3.0.0.jar;E:\Oracle\Middlewa
re\modules\org.apache.ant_1.7.1\lib\ant-antlr.jar;E:\Oracle\Middleware\modules\o
rg.apache.ant_1.7.1\lib\ant-apache-bcel.jar;E:\Oracle\Middleware\modules\org.apa
che.ant_1.7.1\lib\ant-apache-bsf.jar;E:\Oracle\Middleware\modules\org.apache.ant
_1.7.1\lib\ant-apache-log4j.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.
1\lib\ant-apache-oro.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\a
nt-apache-regexp.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-a
pache-resolver.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-com
mons-logging.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-commo
ns-net.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-jai.jar;E:\
Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-javamail.jar;E:\Oracle\Mi
ddleware\modules\org.apache.ant_1.7.1\lib\ant-jdepend.jar;E:\Oracle\Middleware\m
odules\org.apache.ant_1.7.1\lib\ant-jmf.jar;E:\Oracle\Middleware\modules\org.apa
che.ant_1.7.1\lib\ant-jsch.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1
\lib\ant-junit.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-net
rexx.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-nodeps.jar;E:
\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant-starteam.jar;E:\Oracle\M
iddleware\modules\org.apache.ant_1.7.1\lib\ant-stylebook.jar;E:\Oracle\Middlewar
e\modules\org.apache.ant_1.7.1\lib\ant-swing.jar;E:\Oracle\Middleware\modules\or
g.apache.ant_1.7.1\lib\ant-testutil.jar;E:\Oracle\Middleware\modules\org.apache.
ant_1.7.1\lib\ant-trax.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib
\ant-weblogic.jar;E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\ant.jar;
E:\Oracle\Middleware\modules\org.apache.ant_1.7.1\lib\xercesImpl.jar;E:\Oracle\M
iddleware\modules\org.apache.ant_1.7.1\lib\xml-apis.jar'
[wlst] 'weblogic.management.scripting.WLSTInterpreterInvoker'
[wlst]
[wlst] The ' characters around the executable and arguments are
[wlst] not part of the command.
dropping E:\Oracle\Middleware\patch_wls1033\profiles\default\sys_manifest_classp
ath\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\patch_oepe1033\profiles\default\sys_manifest_class
path\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\patch_ocp353\profiles\default\sys_manifest_classpa
th\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\wlserver_10.3\server\lib\weblogic_sp.jar from path
as it doesn't exist
dropping E:\Oracle\Middleware\modules\com.bea.common.configfwk.wlinterop_10.3.1.
0 from path as it doesn't exist
dropping E:\Oracle\Middleware\patch_wls1033\profiles\default\sys_manifest_classp
ath\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\patch_oepe1033\profiles\default\sys_manifest_class
path\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\patch_ocp353\profiles\default\sys_manifest_classpa
th\weblogic_patch.jar from path as it doesn't exist
dropping E:\Oracle\Middleware\wlserver_10.3\server\lib\weblogic_sp.jar from path
as it doesn't exist
dropping E:\Oracle\Middleware\modules\com.bea.common.configfwk.wlinterop_10.3.1.
0 from path as it doesn't exist
[wlst] Using input " "
[wlst] <WLSTTask> Loaded and set the properties from c:/osb/build/dev/impor
t.properties
[wlst] <WLSTTask> sys.argv is ['c:/osb/build/scripts/import.py']
[wlst] Connecting to server: t3://localhost:7001
[wlst] Connecting to t3://localhost:7001 with userid weblogic ...
[wlst] Successfully connected to Admin Server 'AdminServer' that belongs to
domain 'base_domain'.
[wlst]
[wlst] Warning: An insecure protocol was used to connect to the
[wlst] server. To ensure on-the-wire security, the SSL port or
[wlst] Admin port should be used instead.
[wlst]
[wlst] Location changed to domainRuntime tree. This is a read-only tree wit
h DomainMBean as the root.
[wlst] For more help, use help(domainRuntime)
[wlst]
[wlst] Starting import of: c:/osb/configuration/sbconfig.jar on ALSB Admin
Server: t3://localhost:7001
[wlst] Read import jar file
[wlst] Import file read successfully c:/osb/configuration/sbconfig.jar
[wlst] Creating unique session name
[wlst] Created session name : ALSBImportScript-1279101189649
[wlst] Creating SessionMBean
[wlst] Unexpected error: java.lang.RuntimeException
[wlst] Unexpected error: java.lang.RuntimeException
[wlst] No stack trace available.
[wlst] Traceback (innermost last):
[wlst] File "c:\osb\build\scripts\import.py", line 179, in ?
[wlst] File "c:\osb\build\scripts\import.py", line 47, in importToALSBDom
ain
[wlst] File "c:\osb\build\scripts\import.py", line 167, in getSessionMBea
n
[wlst] File "<iostream>", line 1162, in findService
[wlst] at weblogic.management.jmx.MBeanServerInvocationHandler.newProxy
Instance(MBeanServerInvocationHandler.java:621)
[wlst] at weblogic.management.jmx.MBeanServerInvocationHandler.invoke(M
BeanServerInvocationHandler.java:418)
[wlst] at $Proxy11.findService(Unknown Source)
[wlst] at weblogic.management.scripting.WLScriptContext.findService(WLS
criptContext.java:209)
[wlst] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[wlst] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcces
sorImpl.java:39)
[wlst] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMet
hodAccessorImpl.java:25)
[wlst] at java.lang.reflect.Method.invoke(Method.java:597)
[wlst]
[wlst] java.lang.RuntimeException: java.lang.RuntimeException: java.lang.Cl
assNotFoundException: com.bea.wli.sb.management.configuration.DelegatedSessionMa
nagementMBean
[wlst]
[wlst] Exception in thread "Main Thread" java.lang.IllegalStateException: T
raceback (innermost last):
[wlst] File "c:\osb\build\scripts\import.py", line 179, in ?
[wlst] File "c:\osb\build\scripts\import.py", line 47, in importToALSBDom
ain
[wlst] File "c:\osb\build\scripts\import.py", line 167, in getSessionMBea
n
[wlst] File "<iostream>", line 1162, in findService
[wlst] at weblogic.management.jmx.MBeanServerInvocationHandler.newProxy
Instance(MBeanServerInvocationHandler.java:621)
[wlst] at weblogic.management.jmx.MBeanServerInvocationHandler.invoke(M
BeanServerInvocationHandler.java:418)
[wlst] at $Proxy11.findService(Unknown Source)
[wlst] at weblogic.management.scripting.WLScriptContext.findService(WLS
criptContext.java:209)
[wlst] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[wlst] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcces
sorImpl.java:39)
[wlst] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMet
hodAccessorImpl.java:25)
[wlst] at java.lang.reflect.Method.invoke(Method.java:597)
[wlst]
[wlst] java.lang.RuntimeException: java.lang.RuntimeException: java.lang.Cl
assNotFoundException: com.bea.wli.sb.management.configuration.DelegatedSessionMa
nagementMBean
[wlst]
[wlst] at weblogic.management.scripting.WLSTInterpreterInvoker.printErr
or(WLSTInterpreterInvoker.java:110)
[wlst] at weblogic.management.scripting.WLSTInterpreterInvoker.executeP
yScript(WLSTInterpreterInvoker.java:103)
[wlst] at weblogic.management.scripting.WLSTInterpreterInvoker.main(WLS
TInterpreterInvoker.java:27)
BUILD FAILED
C:\osb\build\scripts\build.xml:13: Java returned: 1
at org.apache.tools.ant.taskdefs.Java.execute(Java.java:108)
at weblogic.ant.taskdefs.management.WLSTTask.execute(WLSTTask.java:115)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.jav
a:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337)
at org.apache.tools.ant.Project.executeTarget(Project.java:1307)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExe
cutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1191)
at org.apache.tools.ant.Main.runBuild(Main.java:758)
at org.apache.tools.ant.Main.startAnt(Main.java:218)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
Total time: 16 seconds
C:\osb\build\dev>^AHi,
I tried debugging it and i am still getting the same error. I used the script provided byoracle and the script which is given here.
Below is the error i am getting :
[java] ImportError: cannot import name SessionManagementMBean
I am getting an error at
def getSessionManagementMBean(sessionName):
SessionMBean = findService("SessionManagement", "com.bea.wli.sb.management.configuration.SessionManagementMBean")
SessionMBean.createSession(sessionName)
return SessionMBean
Its able to create a unique session , after that for creating session name its throwing error.
C:\Development\Build\scripts\build.xml:31: Java returned: 1
at org.apache.tools.ant.taskdefs.Java.execute(Java.java:108)
at weblogic.ant.taskdefs.management.WLSTTask.execute(WLSTTask.java:115)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.jav
a:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337)
at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExe
cutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1189)
at org.apache.tools.ant.Main.runBuild(Main.java:758)
at org.apache.tools.ant.Main.startAnt(Main.java:217)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
Any help on this?? -
OSB 11g - List business services with WLST
Hi,
We're using OSB 11.1.1.3 and 11.1.1.6 in several environments.
We just need to use wlst scripting to keep track of all business services and their endpoint uri's automatically.
We tried using some old scripts but found out that they don't work on 11g installations:
We tried the following code:
connect('weblogic','oracle10','t3://soavm2:7001')
domainRuntime()
sessionName = "FindServicesSession" + str(System.currentTimeMillis())
sessionMBean = findService(SessionManagementMBean.NAME, SessionManagementMBean.TYPE)
sessionMBean.createSession(sessionName)
servConfMBean = findService(ServiceConfigurationMBean.NAME + "." + sessionName, ServiceConfigurationMBean.TYPE)
alsbCore = findService(ALSBConfigurationMBean.NAME, ALSBConfigurationMBean.TYPE)
allRefs=alsbCore.getRefs(Ref.DOMAIN)
for ref in allRefs:
typeId = ref.getTypeId()
if typeId == "BusinessService":
serviceDefinition = servConfMBean.getServiceDefinition(ref)
endpointConfigration = serviceDefinition.getEndpointConfig()
print endpointConfigration
We get a "AttributeError: 'NoneType' object has no attribute 'getServiceDefinition'" error. It seems that it is related to metalink note "How To Modify Service Configurations By OSB JMX API [ID 1431254.1]". However the code provided there is for java through jmx, does anybody has a working example of how to do that on wlst?
Thanks!
p.d: already posted this question on wlst forum but got no answer...You may like to refer metalink note 1380705.1 and OSB java API (section "Using MBeans in a script")-
http://docs.tpu.ru/docs/oracle/en/fmw/11.1.1.6.0/apirefs.1111/e15033/com/bea/wli/sb/management/configuration/SessionManagementMBean.html
Regards,
Anuj -
Information about the upcoming version of WLST
Satya,
could you please share some information about the new features of the upcoming version of WLST.
I am asking because currently I am trying very hard to implement Python code to setup our entire WLS 8.1 domains (including custom MBeans with our security providers).
This is maybe useless because with the new version of WLST everything is already available.
Will the new version WLST support the following topics?
- creation / deletion of security realms (including display name)
- creation / deletion of security providers
- addition / removal of security providers to / from a security realm
Against these topics I am currently fighting most :-)
Does anyone have corresponding Python code to share?
Cheers,
TorstenTorsten, Attached 4 scripts that add atn, atz, audit and remove a provider.
This script creates a new security ATN Provider of type com.bea.atn.MyNewAtnProvider
with object name Security:Name=myrealmMyTestAuthenticator
# The realm name in your weblogic server
realmName = 'Security:Name=myrealm'
realm = ObjectName(realmName)
# The default Identity asserter in your wls
atnIdentProvName = 'Security:Name=myrealmDefaultIdentityAsserter'
atnIdentProv = ObjectName(atnIdentProvName)
# The default authenticator in your wls
atnProvName = 'Security:Name=myrealmDefaultAuthenticator'
atnProv = ObjectName(atnProvName)
# The new provider that you would like to create
newAtnName = 'Security:Name=myrealmMyTestAuthenticator'
newAtnProv = ObjectName(atnTestProvName)
# create the provider
create(newAtnName, 'com.bea.atn.MyNewAtnProvider')
# Now add your newly created authenticator to the default realm
mbs.setAttribute(realm, Attribute('AuthenticationProviders', array([atnProv,atnIdentProv,newAtnProv], ObjectName)))
# set the realm pointer back on the newly created provider
mbs.setAttribute(newAtnProv, Attribute('Realm', realm))
# change the controlFlag's
mbs.setAttribute(atnProv, Attribute('ControlFlag', 'OPTIONAL'))
mbs.setAttribute(newAtnProv, Attribute('ControlFlag', 'REQUIRED'))
This script creates a new Authorizer of type com.bea.atz.MyNewAtzProvider
with object name Security:Name=myrealmMyAtzAuthorizer' and its to the default realm
# this is the default security realm
realmName = 'Security:Name=myrealm'
realm = ObjectName(realmName)
# This is the default authorizer
atzProvName = 'Security:Name=myrealmDefaultAuthorizer'
atzProv = ObjectName(atzProvName)
# New atz provider that you would like to create
myAtzProvName = 'Security:Name=myrealmMyAtzAuthorizer'
atzProv = ObjectName(myAtzProvName)
# create your new authorizer of type com.bea.atz.MyNewAtzProvider
create(myAtzProvName, 'com.bea.atz.MyNewAtzProvider')
# Add the newly created authorizer to the realm
mbs.setAttribute(realm, Attribute('Authorizers', array([atzProv,atzProv], ObjectName)))
# set the authorizer on the realm
mbs.setAttribute(atzProv, Attribute('Realm', realm))
This script creates a default auditor and adds it to the realm
audProvName = 'Security:Name=myrealmDefaultAuditor'
audProv = ObjectName(audProvName)
create(audProvName,'weblogic.security.providers.audit.DefaultAuditor')
mbs.setAttribute(realm, Attribute('Auditors', array([audProv], ObjectName)))
mbs.setAttribute(audProv, Attribute('Realm', realm))
This script removes the deference to the Atn provider that was added and deletes the
atn provider
# The realm name in your weblogic server
realmName = 'Security:Name=myrealm'
realm = ObjectName(realmName)
# The default Identity asserter in your wls
atnIdentProvName = 'Security:Name=myrealmDefaultIdentityAsserter'
atnIdentProv = ObjectName(atnIdentProvName)
# The default authenticator in your wls
atnProvName = 'Security:Name=myrealmDefaultAuthenticator'
atnProv = ObjectName(atnProvName)
delAtnName = 'Security:Name=myrealmMyTestAuthenticator'
delAtnProv = ObjectName(atnTestProvName)
# This will remove the deference of delAtnProv from the realm
mbs.setAttribute(realm, Attribute('AuthenticationProviders', array([atnProv,atnIdentProv], ObjectName)))
delete( delAtnName, 'com.bea.atn.MyNewAtnProvider' )
Thanks,
-satya
Satya,
I will try to put together a script that can dothis
and post it.That would be great.
Thanx.
Torsten -
Permissions needed to create a WLST session and deploy OSB
Hi,
Can anyone tell me what Weblogic permissions are needed to create a session with the OSB Configuration SessionManagementMBean?
It appears you need to have administrators privilege because in my environment I only have Deployers privileges which si enough for me to do an OSB deployment from the OSB Console (and apply a Customisation file etc)
but when I do it via WLST I get the exception below when I try to create a session:
weblogic.management.NoAccessRuntimeException: Access not allowed for subject: principals=[30maro, IntegrationAdministrators, Monitors, Deployers], on ResourceType: com.bea.wli.sb.management.configuration.SessionManagementMBean Action: execute, Target: createSession
The Javadoc for the SessionManagementMBean and Oracle examples and indeed docuemtnation appears to be silent on this matter.
This is a pain because it suggests I need to have full Administrator privileges to perfor a deployment via a script but only Deployers privilege if I do it manually.
If anyone can shed light on this (or how to grant someone with Deployers privilege to create a session via the MBean) that would be much appreciated.I ended up answering this myself. It turns out this is a bug (that exists in OSB at least to Version 11.1.1.5) for which Oracle can provide a version specific patch that allows someone in the Deployers group to deploy via WLST.
regards -
Newbie question about JMS topic and OSB
So here is what I want to achieve:
I want to "front" a JMS topic on WLS using OSB 10g. I want the users (producers and subscribers) to be access the topic via proxy services. The way I picture this is that a producer will invoke a proxy to publish a message. The subscriber will (asynchronously) invoke another proxy to pickup the message.
Is this possible and how do I go about doing this?
thanks
Edited by: user10341230 on Apr 28, 2010 8:49 AMHi there,
user10341230 wrote:
I want to "front" a JMS topic on WLS using OSB 10g. I want the users (producers and subscribers) to be access the topic via proxy services. > it's not really clear what you want to achieve here.
you say
user10341230 wrote:
The way I picture this is that a producer will invoke a proxy to publish a message.you need a proxy with whatever inbound protocol you like (http, file, mail...), which through a jms business service push the message to the Topic.
you say
user10341230 wrote:
The subscriber will (asynchronously) invoke another proxy to pickup the messagethe subscriber can be either asyncrhnous, in which case you need a proxy service with inbound protocol jms. or as you probably need a synchronous one
in which case you need another proxy with whatever inbound protocol you like whch once called in its pipeline calls some pojo class to read from this topic synchrnously (you need a durable subsciber).
Regards,
Tony
ps: have a look http://download-llnw.oracle.com/docs/cd/E11035_01/wls100/jms/design_best_practices.html#wp1058694 -
How to undo activated OSB session with WLST?
Does anybody know if there´s a chance to undo an activated OSB session with WLST?
There´s a way to undo an UNactivated session but not an activated one (like the undo session in /sbconsole).
Thanks in advance.
Edited by: 956378 on 31-ago-2012 12:48"zone copy active-zoneset full-zoneset vsan 2" is the correct command. It will overwrite the full zoneset (identical) and ready to edit.
-
Hi there,
I'm new in BEA's technologies world and i'm looking for a way to configure mi AquaLogic Service Bus domain's services without using the SB Console.
I'm reading about the WLST (WebLogic Scripting Tool) and there's so much information that I can't get what I want.
I realize some tests but I didn't succeed.
Is there a way to edit my proxy and business services (also routing, transformation, validations, etc) of ALSB without using the SB Console? Can I do it with WLST?
Does anybody have any example code for doing this? Or can tell me how can i do it?
Thanks a lot!
Ariel (from Argentina)Hi Ariel,
You can use WLST to clone and modify existing services in ALSB. To my understanding it's not possible to actually create new services using WLST. The following link has an example that's a good starting point for using WLST on ALSB(2.6), the script needs some minor modifications to run on 3.0:
https://codesamples.projects.dev2dev.bea.com/servlets/tracking/remcurreport/true/template/ViewIssue.vm/id/S320/nbrresults/40
If your only restriction is not using the (web)console you can also try using Workspace, the link below is to a blog to get started with that:
http://blogs.oracle.com/christomkins/2008/04/oracle_service_bus_v30_getting.html
Hope that's of any help to you.
-cheers
-jeroen(from Canada)
Maybe you are looking for
-
Hello, I am creating an application that uses a lot of images. Does anyone know how to put these images in a Jar File and access them directly from the Jar File from the Java Code?? or does anyone know about any tutotials Thanks in advanace for any h
-
Query regarding identification of Customizations done in Oracle Apps
Hi, I am from an IT personnel from a banking industry. Here we are using Oracle Apps (CU1) that too on Oracle 9i. In order to go ahead with migration of Oracle to 10g we need to migrate the application from CU1 to CU2. But before we go with this migr
-
Can I use my IPad2 with 240v in Peru
Can I use a standard 2-prong 240-110v adapter for my Ipad in Peru?
-
X120e no FN keys onscreen display
Hi, I just reinstalled my OS and all the drivers from the lenovo website. I also installed the hotkeys driver for onscreen display below: http://support.lenovo.com/en_US/downloads/detail.page?LegacyDocID=MIGR-74261 After this fresh reinstall, my func
-
Want to have some beginners idea.
Hi all, I want to have some beginners idea in BAPI BADI in a very simple language with analogies so that it will be helpful to understand. Not with high technical jargons. Experts pls help me out. With regards, Abir