使用shiro和mvn jetty插件

时间:2012-06-10 05:12:29

标签: session jetty shiro maven-jetty-plugin

我从apache shiro doc页面下载了“Spring MVC + Shiro + myBatis + JSR-303 Validation”示例,我想用maven jetty插件运行它,所以我打开pom.xml并放置这样的东西

<plugin>
            <groupId>org.mortbay.jetty</groupId>
            <artifactId>maven-jetty-plugin</artifactId>
            <version>6.1.10</version>
                    <configuration>
                            <scanIntervalSeconds>10</scanIntervalSeconds>
                            <stopKey>foo</stopKey>
                            <stopPort>9999</stopPort>
                            <webAppConfig>
                            <contextPath>/</contextPath>
                            </webAppConfig>
                            <scanIntervalSeconds>10</scanIntervalSeconds>
                            <!-- <webAppSourceDirectory></webAppSourceDirectory> -->
                    </configuration>
                    <executions>
                            <execution>
                                    <id>start-jetty</id>
                                    <phase>pre-integration-test</phase>
                                    <goals>
                                            <goal>run</goal>
                                    </goals>
                                    <configuration>
                                            <scanIntervalSeconds>0</scanIntervalSeconds>
                                            <daemon>true</daemon>
                                    </configuration>
                            </execution>
                            <execution>
                                    <id>stop-jetty</id>
                                    <phase>post-integration-test</phase>
                                    <goals>
                                            <goal>stop</goal>
                                    </goals>
                            </execution>
                    </executions>
            </plugin>

之后我启动应用程序使用mvn jetty:run,我尝试在示例中注册一个用户,我得到一个例外: “ java.lang.ClassCastException:org.apache.shiro.web.servlet.ShiroHttpSession无法强制转换为org.mortbay.jetty.servlet.AbstractSessionManager $ SessionIf ”,有谁可以告诉我原因,以及thx很多。

1 个答案:

答案 0 :(得分:0)

很可能ShiroHttpSession无法转换为AbstractSessionManager $ SessionIf,因为它不是它的实例。这看起来像Jetty中的一个错误。我重现了这个,然后将jetty插件升级到版本6.1.26,错误就消失了。