-
Bug
-
Resolution: Done
-
Blocker
-
1.5.1.Final
-
None
The files from custom plugin is copied to WF installation/data/apiman/plugins/.../work directory on startup. And it looks like the deployment is not waiting for the files to copied to be completely and triggers "Invalid plugin file" error and which ultimately causes the error in server startup and the gateway endpoint is 404.
The custom plugin for error writer is changed in apiman.properties as below.
apiman-gateway.writers.policy-failure=plugin:org.test:apiman-custom-failure:0.0.1-SNAPSHOT/io.apiman.plugins.test.PolicyFailureWriter apiman-gateway.writers.error=plugin:org.test:apiman-custom-failure:0.0.1-SNAPSHOT/io.apiman.plugins.test.PolicyErrorWriter
2018-09-24 16:16:57,376 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 82) MSC000001: Failed to start service jboss.undertow.deployment.default-server.default-h ost./apiman-gateway-api: org.jboss.msc.service.StartException in service jboss.undertow.deployment.default-server.default-host./apiman-gateway-api: java.lang.RuntimeException: ja va.lang.RuntimeException: java.lang.Exception: Invalid plugin file at: /data/wildfly-11.0.0.Final/standalone/data/apiman/plugins/org.test/apiman-custom-failure/0.0.1-SNAPSHO T/apimancustom-failure.war/plugin.war at org.wildfly.extension.undertow.deployment.UndertowDeploymentService$1.run(UndertowDeploymentService.java:84) 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:748) at org.jboss.threads.JBossThread.run(JBossThread.java:320) Caused by: java.lang.RuntimeException: java.lang.RuntimeException: java.lang.Exception: Invalid plugin file at: /data/wildfly-11.0.0.Final/standalone/data/apiman/plugins/org.test/apiman-custom-failure/0.0.1-SNAPSHOT/apiman-custom-failure.war/plugin.war at io.undertow.servlet.core.DeploymentManagerImpl.deploy(DeploymentManagerImpl.java:241) at org.wildfly.extension.undertow.deployment.UndertowDeploymentService.startContext(UndertowDeploymentService.java:99) at org.wildfly.extension.undertow.deployment.UndertowDeploymentService$1.run(UndertowDeploymentService.java:81) ... 6 more Caused by: java.lang.RuntimeException: java.lang.Exception: Invalid plugin file at: /data/wildfly-11.0.0.Final/standalone/data/apiman/plugins/org.test/apiman-custom-failure/ 0.0.1-SNAPSHOT/apiman-custom-failure.war/plugin.war at io.apiman.gateway.platforms.war.WarEngineConfig.loadConfigClass(WarEngineConfig.java:314) at io.apiman.gateway.platforms.war.WarEngineConfig.getPolicyFailureWriterClass(WarEngineConfig.java:212) at io.apiman.gateway.platforms.war.WarGateway.loadFailureFormatter(WarGateway.java:70) at io.apiman.gateway.platforms.war.WarGateway.init(WarGateway.java:56) at io.apiman.gateway.platforms.war.listeners.WarGatewayBootstrapper.contextInitialized(WarGatewayBootstrapper.java:42) at io.undertow.servlet.core.ApplicationListeners.contextInitialized(ApplicationListeners.java:187) at io.undertow.servlet.core.DeploymentManagerImpl$1.call(DeploymentManagerImpl.java:205) at io.undertow.servlet.core.DeploymentManagerImpl$1.call(DeploymentManagerImpl.java:174) at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:42) at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43) at org.wildfly.extension.undertow.security.SecurityContextThreadSetupAction.lambda$create$0(SecurityContextThreadSetupAction.java:105) at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1508) at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1508) at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1508) at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1508) at io.undertow.servlet.core.DeploymentManagerImpl.deploy(DeploymentManagerImpl.java:239) ... 8 more Caused by: java.lang.Exception: Invalid plugin file at: /data/wildfly-11.0.0.Final/standalone/data/apiman/plugins/org.test/apiman-custom-failure/0.0.1-SNAPSHOT/apiman-custom -failure.war/plugin.war at io.apiman.gateway.engine.impl.DefaultPluginRegistry.readPluginFile(DefaultPluginRegistry.java:309) at io.apiman.gateway.engine.impl.DefaultPluginRegistry.loadPlugin(DefaultPluginRegistry.java:246) at io.apiman.gateway.platforms.war.WarEngineConfig.loadConfigClass(WarEngineConfig.java:311) ... 23 more
Because this is SNAPSHOT release , it is copied every time on startup/restart. But for non-SNAPSHOT release, this error occurs for first time server startup and next time the startup is fine. This is because the file already exists in /data/apiman/plugins/.../work directory. But irrespective of SNAPSHOT or not, the startup fails for first time atleast.
- is related to
-
APIMAN-1232 Custom Error and Failure writers plugins fails if packaged in single war.
- Resolved