Java 无法加载servlet筛选器类:com.sap.cloud.sdk.cloudplatform.security.servlet.HttpSecurityHeadersFilter(SCP)

Java 无法加载servlet筛选器类:com.sap.cloud.sdk.cloudplatform.security.servlet.HttpSecurityHeadersFilter(SCP),java,sap-cloud-platform,sap-cloud-sdk,Java,Sap Cloud Platform,Sap Cloud Sdk,我是来寻求帮助解决我在SCP中的应用程序部署中面临的一个问题的 SAP云平台: SCP环境是近地天体 运行时名称=Java EE7 Web概要文件TomEE 7 版本=1.74 Java应用程序: 原型近地天体 SAP云SDk v3 应用程序日志如下所示: 2020 06 14 10:25:49#+00#ERROR#OpenEJB.tomcat##anonymous#localhost-startStop-1#na#fzrl99axqb#anaplaninboundapplication

我是来寻求帮助解决我在SCP中的应用程序部署中面临的一个问题的

SAP云平台:

  • SCP环境是近地天体
  • 运行时名称=Java EE7 Web概要文件TomEE 7
  • 版本=1.74
Java应用程序:

  • 原型近地天体
  • SAP云SDk v3
应用程序日志如下所示:

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
另外,依赖关系树:

[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
应用程序使用运行时版本1.0时(更新前)未显示任何问题。 我使用的是sdk bom版本3.11.0。我更新了版本3.16.1的sdk bom,但没有效果

除SAP Cloud SDK v2外,其他两个使用相同原型的应用程序在SCP中部署时不会出现错误

此外,如果在本地服务器(本地Neo)中运行,则不会出现此类错误

请你就如何克服这个问题给出一个提示好吗

比尔


Pietro我猜您的应用程序使用后端保护,对吗

Maven工件中包含类
com.sap.cloud.sdk.cloudplatform.security.servlet.HttpSecurityHeadersFilter

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

com.sap.cloud.sdk.cloudplatform
安全servlet

因此,请将此依赖项添加到您的项目中,然后重试。

我从一开始就在项目中具有此依赖项。我根据Neo原型创建了这个项目。另外,我上次(2月)部署该项目时,它的工作状态很好。此时,1.0版仍然有效。现在,在部署时,我必须至少使用1.74版。最后但并非最不重要的一点是,其他使用SDK v2的应用程序运行良好。这一个使用的是SDK v3。@PietroHenrique我输入了错误的工件id。事实上,我的意思是
security servlet
它解决了我的问题。非常感谢:)