1

위케이 애플리케이션을 작성했으며 로컬에서 완벽하게 작동합니다. 내가 무엇을해야합니까에게 개찰구 + 시로오라클 애플리케이션 (10g) 서버에서 개찰 애플리케이션 시작

web.xml을

<?xml version="1.0" encoding="ISO-8859-1"?> 
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
    version="2.5"> 

    <display-name>myapp</display-name> 
    <session-config> 
      <session-timeout>36000</session-timeout> 
    </session-config> 

    <filter> 
    <filter-name>ShiroFilter</filter-name> 
    <filter-class>org.apache.shiro.web.servlet.IniShiroFilter</filter-class> 
    <init-param><param-name>config</param-name><param-value> 
      [main] 
      authc.loginUrl = /login 
      [urls] 
      /login = anon 
      [users] 
      admin=admin, NT_ADMIN 
    </param-value></init-param> 
    </filter> 

    <filter-mapping> 
     <filter-name>ShiroFilter</filter-name> 
     <url-pattern>/*</url-pattern> 
    </filter-mapping> 

    <filter> 
     <filter-name>wicket.myapp</filter-name> 
     <filter-class>org.apache.wicket.protocol.http.WicketFilter</filter-class> 
     <init-param> 
      <param-name>applicationClassName</param-name> 
      <param-value>eu.peter.stats.pages.WicketApplication</param-value> 
     </init-param> 
    </filter> 

    <filter-mapping> 
     <filter-name>wicket.myapp</filter-name> 
     <url-pattern>/*</url-pattern> 
    </filter-mapping> 
    <filter-mapping> 
     <filter-name>wicket.myapp</filter-name> 
     <url-pattern>/*</url-pattern> 
     <dispatcher>REQUEST</dispatcher> 
     <dispatcher>ERROR</dispatcher> 
    </filter-mapping> 

    <error-page> 
     <error-code>404</error-code> 
     <location>/404</location> 
    </error-page> 
</web-app> 

를 사용

14/01/28 09:49:29.481 NTDB: Servlet error 
java.lang.NoSuchMethodError: org.apache.wicket.util.lang.Objects.newInstance(Ljava/lang/String;)Ljava/lang/Object; 
     at org.apache.wicket.Application.addInitializer(Application.java:864) 
     at org.apache.wicket.Application.load(Application.java:938) 
     at org.apache.wicket.Application.initializeComponents(Application.java:715) 
     at org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:732) 
     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.5.0) ].server.http.HttpApplication.getFilterConfig(HttpApplication.java:7767) 
     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.5.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:563) 
     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.5.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:391) 
     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.5.0) ].server.http.HttpRequestHandler.handleNotFound(HttpRequestHandler.java:1087) 
     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.5.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:948) 
     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.5.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:458) 
     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.5.0) ].server.http.AJPRequestHandler.run(AJPRequestHandler.java:313) 
     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.5.0) ].server.http.AJPRequestHandler.run(AJPRequestHandler.java:199) 
     at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260) 
     at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:234) 
     at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:29) 
     at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:879) 
     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.5.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303) 
     at java.lang.Thread.run(Thread.java:662) 

: 나는 오라클 애플리케이션 서버 (10g)에 배포 할 때이 오류를 얻을? 어쩌면 내가 개찰구 필터를 사용하기 때문일까?

답변

0

Wicket 1.4.x를 사용하고 Wicket 1.5.x 이상을 사용하는 라이브러리가있는 것으로 보입니다. Ljava/랭을, 당신 제공 스택 추적에서

는 명확 개찰구에서 클래스 Objects이 org.apache.wicket.util.lang.Objects.newInstance (Ljava/랭/문자열)와 방법을 가지고 있지 않는 상태 /목적;

이 방법을 사용하는 마지막 버전은 Wicket 1.4.x입니다.

구형 Wicket 버전과 최신 Wicket 버전 (또는 그 반대로)의 라이브러리 병을 혼합 할 수 없습니다.