小编yea*_*yer的帖子

tomcat 7 embedded没有正确关闭ClassNotFoundException ContainerBase $ StopChild

我正在尝试使用此配置与Tomcat7嵌入式插件进行工作集成测试:

            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <version>2.2</version>
                <configuration>
                    <port>29360</port>
                    <systemProperties>
                        <logback.configurationFile>${project.build.testOutputDirectory}/logback-test.xml</logback.configurationFile>
                        <psw.config>${project.build.testOutputDirectory}</psw.config>
                        <spring.profiles.active>test-e2e</spring.profiles.active>
                    </systemProperties>
                </configuration>
                <dependencies>
                    <dependency>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-api</artifactId>
                        <version>${slf4j.version}</version>
                    </dependency>
                    <dependency>
                        <groupId>ch.qos.logback</groupId>
                        <artifactId>logback-classic</artifactId>
                        <version>${logback.version}</version>
                    </dependency>
                </dependencies>
                <executions>
                    <execution>
                        <id>run-tomcat</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                            <goal>run-war-only</goal>
                        </goals>
                        <configuration>
                            <fork>true</fork>
                        </configuration>
                    </execution>
                    <execution>
                        <id>stop-tomcat</id>
                        <phase>post-integration-test</phase>
                        <goals>
                            <goal>shutdown</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
Run Code Online (Sandbox Code Playgroud)

但是当关闭发生时,我一直有这个错误:引起:java.lang.ClassNotFoundException:org.apache.catalina.core.ContainerBase $ StopChild

[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2:49.618s
[INFO] Finished at: Sun Dec 22 07:58:06 CET 2013
[INFO] Final Memory: 163M/259M
[INFO] ------------------------------------------------------------------------

ERROR: IllegalAccessException for stop method in class org.apache.tomcat.maven.plugin.tomcat7.run.ExtendedTomcat …
Run Code Online (Sandbox Code Playgroud)

tomcat maven maven-tomcat-plugin embedded-tomcat-7

9
推荐指数
1
解决办法
2451
查看次数

如何在Rails 5 API中呈现文件?

我有一个用React编写的单页面应用程序和Ruby on Rails后端(API模式).Rails也提供静态文件.我指的是Rails路由器public/index.html,所以我的SPA可以管理他自己的路由react-router.这是通常的做法,以便使直接链接和刷新工作.

的routes.rb

match '*all', to: 'application#index', via: [:get]
Run Code Online (Sandbox Code Playgroud)

application_controller.rb

class ApplicationController < ActionController::API
  def index
    render file: 'public/index.html'
  end
end
Run Code Online (Sandbox Code Playgroud)

问题是这在API模式下不起作用.这只是一个空洞的回应.如果我将父类更改为ActionController::Base一切按预期工作.但我不想继承全班的膨胀,我需要纤薄的API版本.

我尝试过添加模块ActionController::Renderers::All,AbstractController::Rendering无论是否成功.

ruby ruby-on-rails url-routing single-page-application

8
推荐指数
1
解决办法
5008
查看次数

如何使用Mongoid或Mongo Ruby驱动程序从Ruby代码获取MongoDB版本?

我在MongoDB上有一个Rails应用程序。我需要在状态网页上动态显示当前的MongoDB版本。我的客户知道它是否是很重要的3.03.23.4版本。

但是,我在任何地方都找不到此值。我正在pry调试连接详细信息,并且已经尝试过从MongoidMongo类层次结构中使用任何相关的公共方法,但均未成功。

用纯MongoDB做到这一点的规范方法是db.version(),但是似乎没有办法用Mongoid发送该原始查询。

ruby ruby-on-rails mongodb mongoid

2
推荐指数
1
解决办法
750
查看次数