Uploaded image for project: 'CXF'
  1. CXF
  2. CXF-3448

Google app engine deploy fail

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.3.3
    • 2.4
    • JAX-RS
    • None
    • Google App Engine v. 1.4.3
      Spring 3.0.5.RELEASE

    Description

      I'm try using cxf to expose resource through REST.
      While deploying web application error occurs:

      javax.servlet.ServletContext log: unavailable
      java.security.AccessControlException: access denied (java.io.FilePermission /WEB-INF/cxf-servlet.xml read)
      	at java.security.AccessControlContext.checkPermission(AccessControlContext.java:355)
      	at java.security.AccessController.checkPermission(AccessController.java:567)
      	at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
      	at com.google.apphosting.runtime.security.CustomSecurityManager.checkPermission(CustomSecurityManager.java:45)
      	at java.lang.SecurityManager.checkRead(SecurityManager.java:888)
      	at java.io.File.exists(File.java:788)
      	at org.apache.cxf.resource.URIResolver.tryFileSystem(URIResolver.java:135)
      	at org.apache.cxf.resource.URIResolver.<init>(URIResolver.java:90)
      	at org.apache.cxf.resource.URIResolver.<init>(URIResolver.java:73)
      	at org.apache.cxf.resource.URIResolver.<init>(URIResolver.java:69)
      	at org.apache.cxf.transport.servlet.CXFServlet.loadAdditionalConfig(CXFServlet.java:172)
      	at org.apache.cxf.transport.servlet.CXFServlet.updateContext(CXFServlet.java:158)
      	at org.apache.cxf.transport.servlet.CXFServlet.loadSpringBus(CXFServlet.java:104)
      	at org.apache.cxf.transport.servlet.CXFServlet.loadBus(CXFServlet.java:73)
      	at org.apache.cxf.transport.servlet.AbstractCXFServlet.init(AbstractCXFServlet.java:84)
      	at org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:440)
      	at org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java:263)
      	at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
      	at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:685)
      	at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
      	at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
      	at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517)
      	at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467)
      	at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
      	at com.google.apphosting.runtime.jetty.AppVersionHandlerMap.createHandler(AppVersionHandlerMap.java:191)
      	at com.google.apphosting.runtime.jetty.AppVersionHandlerMap.getHandler(AppVersionHandlerMap.java:168)
      	at com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:123)
      	at com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:261)
      	at com.google.apphosting.base.RuntimePb$EvaluationRuntime$2.handleRequest(RuntimePb.java:9285)
      	at com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:437)
      	at com.google.net.rpc.impl.Server$RpcTask.runInContext(Server.java:573)
      	at com.google.tracing.TraceContext$TraceContextRunnable$1.run(TraceContext.java:448)
      	at com.google.tracing.TraceContext.runInContext(TraceContext.java:688)
      	at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:326)
      	at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:318)
      	at com.google.tracing.TraceContext$TraceContextRunnable.run(TraceContext.java:446)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
      	at java.lang.Thread.run(Thread.java:636)
      

      Below configuration of cxf:
      web.xml

      <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      		 xmlns="http://java.sun.com/xml/ns/javaee"
      		 xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
      		 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
      		 version="2.5">
      
          <context-param>
              <param-name>contextConfigLocation</param-name>
              <param-value>classpath:spring/context.xml</param-value>
          </context-param>
      
          <listener>
              <listener-class&gt;org.springframework.web.context.ContextLoaderListener</listener-class&gt;
          </listener>
      
          <servlet>
              <servlet-name>CXFServlet</servlet-name>
              <servlet-class&gt;org.apache.cxf.transport.servlet.CXFServlet</servlet-class&gt;
              <load-on-startup>1</load-on-startup>
          </servlet>
      
          <servlet-mapping>
              <servlet-name>CXFServlet</servlet-name>
              <url-pattern>/cxf/*</url-pattern>
          </servlet-mapping>
      </web-app>
      

      Spring context configuration.

      <?xml version="1.0" encoding="UTF-8"?>
      <beans xmlns="http://www.springframework.org/schema/beans"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xmlns:jaxrs="http://cxf.apache.org/jaxrs"
             xsi:schemaLocation="
      	http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
      		http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd"
          default-lazy-init="false">
      
          <import resource="classpath:META-INF/cxf/cxf.xml" />
          <import resource="classpath:META-INF/cxf/cxf-extension-jaxrs-binding.xml" />
          <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
      
          <jaxrs:server id="myService" address="/resource">
              <jaxrs:serviceBeans>
                  <!-- spring beans -->
              </jaxrs:serviceBeans>
          </jaxrs:server>
      </beans>
      

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            Unassigned Unassigned
            lstrzelecki Ɓukasz Strzelecki
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment