on 12-11-2013 2:46 PM
Hi,
I am trying to use the Open SQL Data Browser to see data in tables that have been deployed through a DC. I have tried to implement UME Action permissions to give me access (as described in and Using Open SQL Data Browser - SAP NetWeaver Administrator - SAP Library) but I cannot get my UME DC to deploy... When I try to deploy it has an exception that refers to the message "Permission class missing".
This is what the action file looks like:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<BUSINESSSERVICE>
<ACTION
NAME="VendorTablesRead">
<DESCRIPTION
LOCALE="en"
VALUE="Access to read vendor tables in Open SQL Browser"/>
<PERMISSION class="com.sap.sql.itsam.databrowser.permission.DataBrowserPermission" NAME="ReadTables" VALUE="VEND_*" />
</ACTION>
</BUSINESSSERVICE>
Here is the full exception message - please let me know what I am doing wrong so that I can resolve this - it will be much appreciated!!
Status ERROR
Plugin : com.sap.ide.tools.services
code=0
Deployment problems
children=[
Status ERROR
Plugin : com.sap.ide.tools.services
code=0
Deploy Exception.
com.sap.engine.services.dc.api.deploy.DeployException: [ERROR CODE DPL.DCAPI.1027] DeploymentException.
Reason: ASJ.dpl_dc.001085 Operation [deploy] of [com.spar_vendor~sql~action] failed
at com.sap.engine.services.dc.api.deploy.impl.DeployProcessorImpl.deployItems(DeployProcessorImpl.java:862)
at com.sap.engine.services.dc.api.deploy.impl.DeployProcessorImpl.deploy(DeployProcessorImpl.java:259)
at com.sap.ide.eclipse.deployer.dc.deploy.DeployProcessor70.deploy(DeployProcessor70.java:105)
at com.sap.ide.tools.services.dc.EngineDcDeployService.deployFiles(EngineDcDeployService.java:257)
at com.sap.ide.tools.services.dc.EngineDcDeployService.deploy(EngineDcDeployService.java:135)
at com.sap.ide.dii05.ui.internal.actions.dc.DcDeployAction$5$1.run(DcDeployAction.java:282)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Nested exceptions :com.sap.engine.services.dc.cm.deploy.DeploymentException: ASJ.dpl_dc.001085 Operation [deploy] of [com.spar_vendor~sql~action] failed
atcom.sap.engine.services.dc.cm.deploy.impl.OnlineDeployProcessor.performDelivery(OnlineDeployProcessor.java:246)
atcom.sap.engine.services.dc.cm.deploy.impl.BulkOnlineDeployProcessor.deploy(BulkOnlineDeployProcessor.java:67)
atcom.sap.engine.services.dc.cm.deploy.impl.AbstractDeployProcessor$DeployProcessorHelper.visit(AbstractDeployProcessor.java:282)
atcom.sap.engine.services.dc.cm.deploy.impl.DeploymentItemImpl.accept(DeploymentItemImpl.java:84)
atcom.sap.engine.services.dc.cm.deploy.impl.AbstractDeployProcessor.deploy(AbstractDeployProcessor.java:100)
atcom.sap.engine.services.dc.cm.deploy.impl.DeployThread.run(DeployThread.java:39)
atcom.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
atcom.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
atcom.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)
Nested exceptions :com.sap.engine.services.dc.gd.DeliveryException: [ERROR CODE DPL.DC.3298] Operation [deploy] of [com.spar_vendor~sql~action] failed
atcom.sap.engine.services.dc.gd.impl.ApplicationDeployer.deploy(ApplicationDeployer.java:167)
atcom.sap.engine.services.dc.gd.impl.InitialApplicationDeployer.performDeployment(InitialApplicationDeployer.java:138)
atcom.sap.engine.services.dc.gd.impl.InitialGenericDeliveryImpl.deploy(InitialGenericDeliveryImpl.java:57)
atcom.sap.engine.services.dc.cm.deploy.impl.OnlineDeployProcessor.performDelivery(OnlineDeployProcessor.java:213)
atcom.sap.engine.services.dc.cm.deploy.impl.BulkOnlineDeployProcessor.deploy(BulkOnlineDeployProcessor.java:67)
atcom.sap.engine.services.dc.cm.deploy.impl.AbstractDeployProcessor$DeployProcessorHelper.visit(AbstractDeployProcessor.java:282)
atcom.sap.engine.services.dc.cm.deploy.impl.DeploymentItemImpl.accept(DeploymentItemImpl.java:84)
atcom.sap.engine.services.dc.cm.deploy.impl.AbstractDeployProcessor.deploy(AbstractDeployProcessor.java:100)
atcom.sap.engine.services.dc.cm.deploy.impl.DeployThread.run(DeployThread.java:39)
atcom.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
atcom.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
atcom.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)
Nested exceptions :com.sap.engine.services.deploy.server.utils.DSRemoteException: ASJ.dpl_ds.006193 Operation [deploy] of [/usr/sap/POD/J00/j2ee/cluster/server0/temp/tc~bl~deploy_controller/archives/2323/com.spar~vendor~sql~action.ear] failed
atcom.sap.engine.services.deploy.server.DeployServiceImpl.catchDeploymentExceptionWithDSRem(DeployServiceImpl.java:3366)
atcom.sap.engine.services.deploy.server.DeployServiceImpl.deploy(DeployServiceImpl.java:315)
atcom.sap.engine.services.dc.gd.impl.ApplicationDeployer.deploy(ApplicationDeployer.java:139)
atcom.sap.engine.services.dc.gd.impl.InitialApplicationDeployer.performDeployment(InitialApplicationDeployer.java:138)
atcom.sap.engine.services.dc.gd.impl.InitialGenericDeliveryImpl.deploy(InitialGenericDeliveryImpl.java:57)
atcom.sap.engine.services.dc.cm.deploy.impl.OnlineDeployProcessor.performDelivery(OnlineDeployProcessor.java:213)
atcom.sap.engine.services.dc.cm.deploy.impl.BulkOnlineDeployProcessor.deploy(BulkOnlineDeployProcessor.java:67)
atcom.sap.engine.services.dc.cm.deploy.impl.AbstractDeployProcessor$DeployProcessorHelper.visit(AbstractDeployProcessor.java:282)
atcom.sap.engine.services.dc.cm.deploy.impl.DeploymentItemImpl.accept(DeploymentItemImpl.java:84)
atcom.sap.engine.services.dc.cm.deploy.impl.AbstractDeployProcessor.deploy(AbstractDeployProcessor.java:100)
atcom.sap.engine.services.dc.cm.deploy.impl.DeployThread.run(DeployThread.java:39)
atcom.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
atcom.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
atcom.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)
Nested exceptions :com.sap.engine.services.deploy.container.DeploymentException: UME Actions for application com.spar/vendor~sql~action couldn't be deployed: Problem at parsing or deploying Actions XML file!
atcom.sap.security.core.server.ume.service.UMEContainer.deploy(UMEContainer.java:179)
atcom.sap.engine.services.deploy.server.utils.container.ContainerWrapper.deploy(ContainerWrapper.java:309)
atcom.sap.engine.services.deploy.server.application.DeploymentTransaction.makeComponents(DeploymentTransaction.java:519)
atcom.sap.engine.services.deploy.server.application.DeployUtilTransaction.commonBegin(DeployUtilTransaction.java:183)
atcom.sap.engine.services.deploy.server.application.DeploymentTransaction.begin(DeploymentTransaction.java:203)
atcom.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhasesOnOneServer(ApplicationTransaction.java:421)
atcom.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhases(ApplicationTransaction.java:473)
atcom.sap.engine.services.deploy.server.DeployServiceImpl.makeGlobalTransaction(DeployServiceImpl.java:1832)
atcom.sap.engine.services.deploy.server.DeployServiceImpl.deploy(DeployServiceImpl.java:360)
atcom.sap.engine.services.deploy.server.DeployServiceImpl.deploy(DeployServiceImpl.java:313)
atcom.sap.engine.services.dc.gd.impl.ApplicationDeployer.deploy(ApplicationDeployer.java:139)
atcom.sap.engine.services.dc.gd.impl.InitialApplicationDeployer.performDeployment(InitialApplicationDeployer.java:138)
atcom.sap.engine.services.dc.gd.impl.InitialGenericDeliveryImpl.deploy(InitialGenericDeliveryImpl.java:57)
atcom.sap.engine.services.dc.cm.deploy.impl.OnlineDeployProcessor.performDelivery(OnlineDeployProcessor.java:213)
atcom.sap.engine.services.dc.cm.deploy.impl.BulkOnlineDeployProcessor.deploy(BulkOnlineDeployProcessor.java:67)
atcom.sap.engine.services.dc.cm.deploy.impl.AbstractDeployProcessor$DeployProcessorHelper.visit(AbstractDeployProcessor.java:282)
atcom.sap.engine.services.dc.cm.deploy.impl.DeploymentItemImpl.accept(DeploymentItemImpl.java:84)
atcom.sap.engine.services.dc.cm.deploy.impl.AbstractDeployProcessor.deploy(AbstractDeployProcessor.java:100)
atcom.sap.engine.services.dc.cm.deploy.impl.DeployThread.run(DeployThread.java:39)
atcom.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
atcom.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
atcom.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)
Nested exceptions :com.sap.security.api.UMException: Scaning file "com.spar/vendor~sql~action" failed!: Instantiation of service action com.sap.security.core.role.imp.xml.XMLServiceAction@41e65c96 failed: Permission class missing
atcom.sap.security.core.role.imp.xml.XMLServiceRepository.checkXMLFile(XMLServiceRepository.java:261)
atcom.sap.security.core.role.imp.xml.XMLServiceRepository.deployActionsXMLFile(XMLServiceRepository.java:686)
atcom.sap.security.core.server.ume.service.UMEContainer.deploy(UMEContainer.java:150)
atcom.sap.engine.services.deploy.server.utils.container.ContainerWrapper.deploy(ContainerWrapper.java:309)
atcom.sap.engine.services.deploy.server.application.DeploymentTransaction.makeComponents(DeploymentTransaction.java:519)
atcom.sap.engine.services.deploy.server.application.DeployUtilTransaction.commonBegin(DeployUtilTransaction.java:183)
atcom.sap.engine.services.deploy.server.application.DeploymentTransaction.begin(DeploymentTransaction.java:203)
atcom.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhasesOnOneServer(ApplicationTransaction.java:421)
atcom.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhases(ApplicationTransaction.java:473)
atcom.sap.engine.services.deploy.server.DeployServiceImpl.makeGlobalTransaction(DeployServiceImpl.java:1832)
atcom.sap.engine.services.deploy.server.DeployServiceImpl.deploy(DeployServiceImpl.java:360)
atcom.sap.engine.services.deploy.server.DeployServiceImpl.deploy(DeployServiceImpl.java:313)
atcom.sap.engine.services.dc.gd.impl.ApplicationDeployer.deploy(ApplicationDeployer.java:139)
atcom.sap.engine.services.dc.gd.impl.InitialApplicationDeployer.performDeployment(InitialApplicationDeployer.java:138)
atcom.sap.engine.services.dc.gd.impl.InitialGenericDeliveryImpl.deploy(InitialGenericDeliveryImpl.java:57)
atcom.sap.engine.services.dc.cm.deploy.impl.OnlineDeployProcessor.performDelivery(OnlineDeployProcessor.java:213)
atcom.sap.engine.services.dc.cm.deploy.impl.BulkOnlineDeployProcessor.deploy(BulkOnlineDeployProcessor.java:67)
atcom.sap.engine.services.dc.cm.deploy.impl.AbstractDeployProcessor$DeployProcessorHelper.visit(AbstractDeployProcessor.java:282)
atcom.sap.engine.services.dc.cm.deploy.impl.DeploymentItemImpl.accept(DeploymentItemImpl.java:84)
atcom.sap.engine.services.dc.cm.deploy.impl.AbstractDeployProcessor.deploy(AbstractDeployProcessor.java:100)
atcom.sap.engine.services.dc.cm.deploy.impl.DeployThread.run(DeployThread.java:39)
atcom.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
atcom.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
atcom.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)
Nested exceptions :com.sap.security.core.role.imp.xml.ServiceInstantiationException: Instantiation of service action com.sap.security.core.role.imp.xml.XMLServiceAction@41e65c96 failed: Permission class missing
atcom.sap.security.core.role.imp.xml.XMLServiceAction.addPermission(XMLServiceAction.java:192)
atcom.sap.security.core.role.imp.xml.XMLServiceAction.<init>(XMLServiceAction.java:102)
atcom.sap.security.core.role.imp.xml.XMLServiceAction.getInstance(XMLServiceAction.java:220)
atcom.sap.security.core.role.imp.xml.XMLService.init(XMLService.java:241)
atcom.sap.security.core.role.imp.xml.XMLService.<init>(XMLService.java:78)
atcom.sap.security.core.role.imp.xml.XMLServiceRepository.getServiceInstance(XMLServiceRepository.java:141)
atcom.sap.security.core.role.imp.xml.XMLServiceRepository.checkXMLFile(XMLServiceRepository.java:251)
atcom.sap.security.core.role.imp.xml.XMLServiceRepository.deployActionsXMLFile(XMLServiceRepository.java:686)
atcom.sap.security.core.server.ume.service.UMEContainer.deploy(UMEContainer.java:150)
atcom.sap.engine.services.deploy.server.utils.container.ContainerWrapper.deploy(ContainerWrapper.java:309)
atcom.sap.engine.services.deploy.server.application.DeploymentTransaction.makeComponents(DeploymentTransaction.java:519)
atcom.sap.engine.services.deploy.server.application.DeployUtilTransaction.commonBegin(DeployUtilTransaction.java:183)
atcom.sap.engine.services.deploy.server.application.DeploymentTransaction.begin(DeploymentTransaction.java:203)
atcom.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhasesOnOneServer(ApplicationTransaction.java:421)
atcom.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhases(ApplicationTransaction.java:473)
atcom.sap.engine.services.deploy.server.DeployServiceImpl.makeGlobalTransaction(DeployServiceImpl.java:1832)
atcom.sap.engine.services.deploy.server.DeployServiceImpl.deploy(DeployServiceImpl.java:360)
atcom.sap.engine.services.deploy.server.DeployServiceImpl.deploy(DeployServiceImpl.java:313)
atcom.sap.engine.services.dc.gd.impl.ApplicationDeployer.deploy(ApplicationDeployer.java:139)
atcom.sap.engine.services.dc.gd.impl.InitialApplicationDeployer.performDeployment(InitialApplicationDeployer.java:138)
atcom.sap.engine.services.dc.gd.impl.InitialGenericDeliveryImpl.deploy(InitialGenericDeliveryImpl.java:57)
atcom.sap.engine.services.dc.cm.deploy.impl.OnlineDeployProcessor.performDelivery(OnlineDeployProcessor.java:213)
atcom.sap.engine.services.dc.cm.deploy.impl.BulkOnlineDeployProcessor.deploy(BulkOnlineDeployProcessor.java:67)
atcom.sap.engine.services.dc.cm.deploy.impl.AbstractDeployProcessor$DeployProcessorHelper.visit(AbstractDeployProcessor.java:282)
atcom.sap.engine.services.dc.cm.deploy.impl.DeploymentItemImpl.accept(DeploymentItemImpl.java:84)
atcom.sap.engine.services.dc.cm.deploy.impl.AbstractDeployProcessor.deploy(AbstractDeployProcessor.java:100)
atcom.sap.engine.services.dc.cm.deploy.impl.DeployThread.run(DeployThread.java:39)
atcom.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
atcom.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
atcom.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)
]
Hi David,All
Please share if you got the solution...., I have exactly same issue 'Permission class missing' while deploying the UME DC
Thanks,
Kumar
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello David & Kumar,
your problem is that the XML attribute names must be uppercase as well as all XML element names in actions.xml. I know this is stupid but I figured this out on my own. The server accepts the deployment if you use uppercase XML attribute and element names. E.g.:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<BUSINESSSERVICE>
<ACTION
NAME="TableRead">
<DESCRIPTION
LOCALE="en"
VALUE="TableRead"/>
<PERMISSION
CLASS="com.sap.sql.itsam.databrowser.permission.DataBrowserPermission"
NAME="TMP_*"/>
</ACTION>
</BUSINESSSERVICE>
This worked for me. Mind that attribute name "CLASS" in element "PERMISSION" is uppercase. Hope this helps! 🙂
Best regards,
Viktor
User | Count |
---|---|
94 | |
11 | |
11 | |
10 | |
9 | |
7 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.