在Windows中将JRuby war文件部署到Tomcat

时间:2012-03-23 15:39:28

标签: ruby-on-rails ruby tomcat jruby warbler

我有一个JRuby on Rails应用程序我正在尝试使用warbler创建的war文件部署到现有的Tomcat 7安装。当我将war文件放在webapps目录中时,它会创建一个包含war内容的目录。我能够访问静态html(公共)文件但是我无法访问任何动态ruby生成的URL并获得404响应。

我的猜测是Tomcat不知道如何执行或处理ruby文件。我需要做些什么来告诉Tomcat将它们作为脚本执行吗?

在我的catalina日志文件中,我看到以下内容:

  

信息:部署Web应用程序存档C:\ Program Files \ Apache   Software Foundation \ Tomcat 7.0 \ webapps \ myapp.war 2012年3月22日10:50:41   PM org.apache.catalina.startup.ContextConfig webConfig SEVERE:Unable   确定WEB-INF / classes的URL   javax.naming.NameNotFoundException:资源/ WEB-INF / classes不是   发现于   org.apache.naming.resources.BaseDirContext.listBindings(BaseDirContext.java:733)     在   org.apache.naming.resources.ProxyDirContext.listBindings(ProxyDirContext.java:546)     在   org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1197)     在   org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:825)     在   org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:300)     在   org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)     在   org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)     在   org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5161)     在   org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)     在   org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:897)     在   org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:873)     在   org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)     在   org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:958)     在   org.apache.catalina.startup.HostConfig $ DeployWar.run(HostConfig.java:1599)     在java.util.concurrent.Executors $ RunnableAdapter.call(未知   来自java.util.concurrent.FutureTask $ Sync.innerRun(未知   来自)java.util.concurrent.FutureTask.run(未知来源)at   java.util.concurrent.ThreadPoolExecutor $ Worker.runTask(未知来源)     at java.util.concurrent.ThreadPoolExecutor $ Worker.run(Unknown Source)     在java.lang.Thread.run(未知来源)2012年3月22日下午10:50:43   org.apache.catalina.startup.TaglibUriRule body INFO:TLD跳过。 URI:   urn:org.jruby.rack已经定义

1 个答案:

答案 0 :(得分:0)

可能与您的路径或JRuby有关。请参阅此http://www.digitalsanctum.com/2007/07/24/jruby-deploying-a-rails-application-on-tomcat/网站。