IBM Support

RS02496: PROBLEM DEPLOYING DECISION SERVICE WITH BRANCH SECURITY ENABLED

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • When branch security is enforced, deploying Decision Service
    fails to determine the latest deployed version when the current
     user cannot access some decision operation in the Decision
    Service project.
    
    Following exception found in SystemOut.log
    
     HandlerMethod E   An unexpected error has occurred. Contact
    your administrator.
                                     java.lang.NullPointerException
     at ilog.rules.teamserver.model.decisionservice.wrapper.
    DCIDsDeploymentOperation.getPropertiesForThisDepOperation(
    DCIDsDeploymentOperation.java:205)
     at ilog.rules.teamserver.model.decisionservice.wrapper.
    DCIDsDeploymentOperation.getRulesetProperties(
    DCIDsDeploymentOperation.java:146)
     at com.ibm.rules.decisionservice.DsUtil.getRulesetVersion(
    DsUtil.java:857)
     at com.ibm.rules.decisionservice.internal.DsDeployedVersions.
    applyVersionPolicy(DsDeployedVersions.java:218)
     at com.ibm.rules.decisionservice.internal.
    DsDeployedVersionsManager.deploy(DsDeployedVersionsManager.java:
    70)
     at com.ibm.rules.decisioncenter.web.core.deployment.
    DeploymentService.getRulesetsVersions(DeploymentService.java:
    995)
     at com.ibm.rules.decisioncenter.web.core.deployment.
    DeploymentService.getDeployedRulesetsVersions(DeploymentService.
    java:963)
     at com.ibm.rules.decisioncenter.web.core.deployment.
    DeploymentController.getDeployedRulesetsVersions(
    DeploymentController.java:117)
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     at sun.reflect.NativeMethodAccessorImpl.invoke(
    NativeMethodAccessorImpl.java:95)
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(
    DelegatingMethodAccessorImpl.java:56)
     at java.lang.reflect.Method.invoke(Method.java:620)
     at org.springframework.web.method.support.
    InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:215)
     at org.springframework.web.method.support.
    InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.
    java:132)
     at org.springframework.web.servlet.mvc.method.annotation.
    ServletInvocableHandlerMethod.invokeAndHandle(
    ServletInvocableHandlerMethod.java:104)
     at org.springframework.web.servlet.mvc.method.annotation.
    RequestMappingHandlerAdapter.invokeHandleMethod(
    RequestMappingHandlerAdapter.java:743)
     at org.springframework.web.servlet.mvc.method.annotation.
    RequestMappingHandlerAdapter.handleInternal(
    RequestMappingHandlerAdapter.java:672)
     at org.springframework.web.servlet.mvc.method.
    AbstractHandlerMethodAdapter.handle(
    AbstractHandlerMethodAdapter.java:82)
     at org.springframework.web.servlet.DispatcherServlet.
    doDispatch(DispatcherServlet.java:919)
     at org.springframework.web.servlet.DispatcherServlet.doService(
    DispatcherServlet.java:851)
     at org.springframework.web.servlet.FrameworkServlet.
    processRequest(FrameworkServlet.java:953)
     at org.springframework.web.servlet.FrameworkServlet.doGet(
    FrameworkServlet.java:844)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:575)
    
     at org.springframework.web.servlet.FrameworkServlet.service(
    FrameworkServlet.java:829)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
    
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(
    ServletWrapper.java:1232)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.
    handleRequest(ServletWrapper.java:781)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.
    handleRequest(ServletWrapper.java:480)
     at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.
    handleRequest(ServletWrapperImpl.java:178)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.
    invokeTarget(WebAppFilterChain.java:136)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(
    WebAppFilterChain.java:97)
     at com.ibm.rules.decisioncenter.web.core.filters.
    SecurityCheckPointFilter.doFilter(SecurityCheckPointFilter.java:
    95)
     at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.
    doFilter(FilterInstanceWrapper.java:195)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(
    WebAppFilterChain.java:91)
     at com.ibm.rules.decisioncenter.web.core.filters.
    RemoteSessionFilter.doFilterInternal(RemoteSessionFilter.java:
    79)
     at com.ibm.rules.decisioncenter.web.core.filters.
    RemoteSessionFilter.doFilter(RemoteSessionFilter.java:59)
     at com.ibm.rules.decisioncenter.web.core.filters.SessionFilter.
    access$001(SessionFilter.java:32)
     at com.ibm.rules.decisioncenter.web.core.filters.SessionFilter$
    1.doFilter(SessionFilter.java:73)
     at org.springframework.web.filter.RequestContextFilter.
    doFilterInternal(RequestContextFilter.java:99)
     at org.springframework.web.filter.OncePerRequestFilter.
    doFilter(OncePerRequestFilter.java:106)
     at com.ibm.rules.decisioncenter.web.core.filters.SessionFilter.
    doFilter(SessionFilter.java:70)
     at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.
    doFilter(FilterInstanceWrapper.java:195)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(
    WebAppFilterChain.java:91)
     at org.springframework.web.filter.CharacterEncodingFilter.
    doFilterInternal(CharacterEncodingFilter.java:88)
     at org.springframework.web.filter.OncePerRequestFilter.
    doFilter(OncePerRequestFilter.java:106)
     at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.
    doFilter(FilterInstanceWrapper.java:195)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(
    WebAppFilterChain.java:91)
     at com.ibm.rules.decisioncenter.web.core.filters.
    HttpPUTRequestFilter.doFilterInternal(HttpPUTRequestFilter.java:
    65)
     at org.springframework.web.filter.OncePerRequestFilter.
    doFilter(OncePerRequestFilter.java:106)
     at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.
    doFilter(FilterInstanceWrapper.java:195)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(
    WebAppFilterChain.java:91)
     at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(
    WebAppFilterManager.java:967)
     at com.ibm.ws.webcontainer.filter.WebAppFilterManager.
    invokeFilters(WebAppFilterManager.java:1107)
     at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.
    java:3926)
     at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(
    WebGroup.java:304)
     at com.ibm.ws.webcontainer.WebContainer.handleRequest(
    WebContainer.java:1007)
     at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(
    WSWebContainer.java:1817)
     at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(
    WCChannelLink.java:200)
     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.
    handleDiscrimination(HttpInboundLink.java:463)
     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.
    handleNewRequest(HttpInboundLink.java:530)
     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.
    processRequest(HttpInboundLink.java:316)
     at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.
    complete(HttpICLReadCallback.java:88)
     at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.
    futureCompleted(AioReadCompletionListener.java:175)
     at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(
    AbstractAsyncFuture.java:217)
     at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(
    AsyncChannelFuture.java:161)
     at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
    
     at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:
    204)
     at com.ibm.io.async.ResultHandler.runEventProcessingLoop(
    ResultHandler.java:775)
     at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
    
     at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1881)
    

Local fix

Problem summary

  • The Problem we have is when branch security is enforced, the
    deployment of Decision Service fails to determine the lastest
    deployed version when the current user cannot access some
    decision operation in the Decision Service project.
    The action end by an Null Pointer Exception.
    

Problem conclusion

  • The code is fixed
    

Temporary fix

Comments

APAR Information

  • APAR number

    RS02496

  • Reported component name

    WS DECISION CTR

  • Reported component ID

    5725B6900

  • Reported release

    881

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2016-09-07

  • Closed date

    2016-11-30

  • Last modified date

    2016-11-30

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Modules/Macros

  • 999
    

Fix information

  • Fixed component name

    WS DECISION CTR

  • Fixed component ID

    5725B6900

Applicable component levels

  • R881 PSY

       UP

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSQP76","label":"IBM Operational Decision Manager"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"881","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
03 November 2021