简体   繁体   中英

Unable to load servlet filter class: com.sap.cloud.sdk.cloudplatform.security.servlet.HttpSecurityHeadersFilter (SCP Neo)

I come to ask help with an issue I am facing at an application deployment in SCP.

SAP Cloud Platform:

  • SCP environment is Neo
  • Runtime name = Java EE7 Web Profile TomEE 7
  • Version = 1.74

Java application:

  • Archetype Neo
  • SAP Cloud SDk v3

The application log follows:

2020 06 14 10:25:49#+00#ERROR#OpenEJB.tomcat##anonymous#localhost-startStop-1#na#fzrl99axqb#anaplaninboundapplication#web##na#na#na#na#
Unable to deploy collapsed ear in war StandardEngine[Catalina].StandardHost[localhost].StandardContext[/anaplan-inbound-application] 
org.apache.openejb.OpenEJBException: Unable to load servlet filter class: com.sap.cloud.sdk.cloudplatform.security.servlet.HttpSecurityHeadersFilter: com.sap.cloud.sdk.cloudplatform.security.servlet.HttpSecurityHeadersFilter
    at org.apache.openejb.config.AnnotationDeployer$ProcessAnnotatedBeans.deploy(AnnotationDeployer.java:2333)
    at org.apache.openejb.config.AnnotationDeployer$ProcessAnnotatedBeans.deploy(AnnotationDeployer.java:2024)
    at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:384)
    at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:420)
    at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:1037)
    at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1281)
    at org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:1125)
    at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:133)
    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5065)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:743)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:719)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:705)
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:970)
    at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1841)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:836)
Caused by: java.lang.ClassNotFoundException: com.sap.cloud.sdk.cloudplatform.security.servlet.HttpSecurityHeadersFilter
    at org.apache.openejb.core.TempClassLoader.loadClass(TempClassLoader.java:186)
    at org.apache.openejb.core.TempClassLoader.loadClass(TempClassLoader.java:83)
    at org.apache.openejb.config.AnnotationDeployer$ProcessAnnotatedBeans.deploy(AnnotationDeployer.java:2330)
    ... 20 common frames omitted

Plus, dependency tree:

[INFO] --- maven-dependency-plugin:3.1.1:tree (default-cli) @ anaplan-inbound-application ---
[INFO] Verbose not supported since maven-dependency-plugin 3.0
[INFO] com.sunstar:anaplan-inbound-application:war:0.0.1-SNAPSHOT
[INFO] \- com.sap.cloud.sdk.cloudplatform:scp-neo:jar:3.11.0:compile
[INFO]    +- com.sap.cloud.sdk.cloudplatform:auditlog-scp-neo:jar:3.11.0:compile
[INFO]    |  +- com.sap.cloud.sdk.cloudplatform:cloudplatform-core:jar:3.11.0:compile
[INFO]    |  \- com.sap.cloud.sdk.cloudplatform:auditlog:jar:3.11.0:compile
[INFO]    +- com.sap.cloud.sdk.cloudplatform:caching:jar:3.11.0:compile
[INFO]    |  +- com.sap.cloud.sdk.cloudplatform:security:jar:3.11.0:compile
[INFO]    |  \- com.sap.cloud.sdk.cloudplatform:tenant:jar:3.11.0:compile
[INFO]    +- com.sap.cloud.sdk.cloudplatform:cloudplatform-core-scp-neo:jar:3.11.0:compile
[INFO]    +- com.sap.cloud.sdk.cloudplatform:cloudplatform-connectivity-scp-neo:jar:3.11.0:compile
[INFO]    |  +- com.sap.cloud.sdk.cloudplatform:cloudplatform-connectivity:jar:3.11.0:compile
[INFO]    |  \- com.sap.cloud.sdk.cloudplatform:cloudplatform-connectivity-scp:jar:3.11.0:compile
[INFO]    +- com.sap.cloud.sdk.cloudplatform:security-scp-neo:jar:3.11.0:compile
[INFO]    +- com.sap.cloud.sdk.cloudplatform:servlet:jar:3.11.0:compile
[INFO]    +- com.sap.cloud.sdk.cloudplatform:tenant-scp-neo:jar:3.11.0:compile
[INFO]    \- com.sap.cloud.sdk.cloudplatform:metering-scp-neo:jar:3.11.0:compile
[INFO]       \- com.sap.cloud.sdk.cloudplatform:resilience:jar:3.11.0:compile

The app had shown no issue (before the update) using runtime version 1.0. I was using sdk-bom version 3.11.0. I update sdk-bom for version 3.16.1, but no effect.

Other two apps using the very same archetype, except by SAP Cloud SDK v2, presents no error at deployment in SCP.

Also, there is no such error if running in local server (local Neo).

Would you please give a hint on how to overcome this issue?

BR,

Pietro

I guess your application uses backend protection, right?

The class com.sap.cloud.sdk.cloudplatform.security.servlet.HttpSecurityHeadersFilter is included in the Maven artifact

<dependency>
  <groupId>com.sap.cloud.sdk.cloudplatform</groupId>
  <artifactId>security-servlet</artifactId>
</dependency>

Hence please add this dependency to your project and retry.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM