2013-09-23 2 views
0

Я очень новичок в Java Web-серверах и веб-приложениях. У нас было очень старое приложение на основе фреймворка Appfuse, прекрасно работающее на Tomcat 5. Appfuse - это сфотографированная фреймворк с hubernet и несколько других вещей, встроенных в него.Миграция приложения AppFuse от Tomcat 7 до Jboss EAP 6.1

Мне нужно перенести его в JBOSS EAP 6.1. Изначально я тестирование на автономном режиме

Думает Я уже сделал 1. JBoss-web.xml создан 2. оракул модуль базы данных создается и добавляется соединение с базой данных в standalone.xml 3. демо-приложения, установленного для проверки протоколирования и системы аутентификации.

но приложение не работает. У меня нет понятия, что не работает, потому что я больше не могу отлаживать эту вещь.

Для начала моя страница входа не работает Для входа у нас была аутентификация на основе форм. Его используют, чтобы перейти на страницу сервлета и использовать, чтобы проверить несколько вещей, таких как базы данных и LDAP и, наконец, использовать для обновления базы данных и использовать для перенаправления на страницу в j_security_check? J_username = пользователя & j_password = 09d841bf7ab817bf248133610fc2c13b346690aa & j_uri =

Что я сделал чтобы проверить, создан ли модуль входа в систему с помощью DatabaseServerLoginModule, и проверка из базы данных также создала демонстрационное приложение, чтобы проверить, работает ли это, и все это хорошо в демо-приложении.

Даже если я отключу свой сервлет регистрации и фильтр входа и использую простую страницу входа в систему jsp, созданную для демонстрационного приложения, я могу войти в систему и сделать несколько вещей, прежде чем снова сломаться.

Ошибка я получаю как ниже

16: 17: 12170 TRACE [org.jboss.security] (HTTP-LOCALHOST/127.0.0.1: 8080-3) PBOX000263: Выполнение запроса выберите пароль от пользователей, где ad_username =? с именем пользователя pealison 16: 17: 12,173 DEBUG [org.jboss.security] (http-localhost/127.0.0.1: 8080-3) PBOX000283: неверный пароль для имени пользователя pealison 16: 17: 12,173 TRACE [org.jboss.security ] (http-localhost/127.0.0.1: 8080-3) PBOX000244: начать отмену метода 16: 17: 12,173 DEBUG [org.jboss.security] (http-localhost/127.0.0.1: 8080-3) PBOX000206: Ошибка входа в систему : javax.security.auth.login.FailedLoginException: PBOX000070: пароль недействителен/требуется пароль по адресу org.jboss.security.auth.spi.UsernamePasswordLoginModule.login (UsernamePasswordLoginModule.java:284) [picketbox-4.0.17.Final-redhat -1.jar: 4.0.17.Final-redhat-1] at sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) [rt.jar: 1.7.0_25] at sun.reflect.NativeMethodAccessorImpl.invoke (Неизвестный источник) [rt.jar: 1.7.0_25] at sun.reflect.DelegatingMethodAccessorImpl.invoke (Неизвестный источник) [rt.jar: 1.7.0_25] at java.lang.reflect.Method.invoke (Неизвестный источник) [rt.jar: 1.7.0_25] at javax.security. auth.login.LoginContext.invoke (Неизвестный источник) [rt.jar: 1.7.0_25] at javax.security.auth.login.LoginContext.access $ 000 (Неизвестный источник) [rt.jar: 1.7.0_25] at javax .security.auth.login.LoginContext $ 4.run (Неизвестный источник) [rt.jar: 1.7.0_25] at javax.security.auth.login.LoginContext $ 4.run (Неизвестный источник) [rt.jar: 1.7.0_25 ] at java.security.AccessController.doPrivileged (собственный метод) [rt.jar: 1.7.0_25] at javax.security.auth.login.LoginContext.invokePriv (Неизвестный источник) [rt.jar: 1.7.0_25] в javax.security.auth.login.LoginContext.login (Неизвестный источник) [rt.jar: 1.7.0_25] на org.jboss.security.authentication.JBossCachedAuthenticationManager.defaultLogin (JBossCachedAuthenticationManager.java:408) [picketbox-infinispan-4.0.17.Final-redhat-1.jar: 4.0.17.Final-redhat-1] at org.jboss.security.authentication.JBossCachedAuthenticationManager .proceedWithJaasLogin (JBossCachedAuthenticationManager.java:345) [picketbox-infinispan-4.0.17.Final-redhat-1.jar: 4.0.17.Final-redhat-1] at org.jboss.security.authentication.JBossCachedAuthenticationManager.authenticate (JBossCachedAuthenticationManager.java:333) [picketbox-infinispan-4.0.17.Final-redhat-1.jar: 4.0.17.Final-redhat-1] at org.jboss.security.authentication.JBossCachedAuthenticationManager.isValid (JBossCachedAuthenticationManager.java : 146) [picketbox-infinispan-4.0.17.Final-redhat-1.jar: 4.0.17.Final-redhat-1] at org.jboss.as.web.security.JBossWebRealm.authenticate (JBossWebRealm.java: 216) [jboss-as-web-7.2.0 .Final-redhat-8.jar: 7.2.0.Final-redhat-8] at org.apache.catalina.authenticator.FormAuthenticator.authenticate (FormAuthenticator.java:280) [jbossweb-7.2.0.Final-redhat- 1.jar: 7.2.0.Final-redhat-1] at org.apache.catalina.authenticator.AuthenticatorBase.invoke (AuthenticatorBase.java:373) [jbossweb-7.2.0.Final-redhat-1.jar: 7.2 .0.Final-redhat-1] at org.jboss.as.web.security.SecurityContextAssociationValve.invoke (SecurityContextAssociationValve.java:169) [jboss-as-web-7.2.0.Final-redhat-8.jar: 7.2.0.Final-redhat-8] at org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:145) [jbossweb-7.2.0.Final-redhat-1.jar: 7.2.0.Final -redhat-1] на org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:97) [jbossweb-7.2.0.Final-redhat-1.jar: 7.2.0.Final-redhat-1] at org.apache. catalina.authenticator.SingleSignOn.invoke (SingleSignOn.java:389) [jbossweb-7.2.0.Final-redhat-1.jar: 7.2.0.Final-redhat-1] на org.apache.catalina.core.StandardEngineValve .invoke (StandardEngineValve.java:102) [jbossweb-7.2.0.Final-redhat-1.jar: 7.2.0.Final-redhat-1] at org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter. java: 336) [jbossweb-7.2.0.Final-redhat-1.jar: 7.2.0.Final-redhat-1] по адресу org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:856) [ jbossweb-7.2.0.Final-redhat-1.jar: 7.2.0.Final-redhat-1] at org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process (Http11Protocol.java:653) [jbossweb-7.2 .0.Final-redhat-1.jar: 7.2.0.Final-redhat-1] at org.apache.tomcat.util.net.JIoEndpoint $ Worker.run (JIoEndpoint.java:920) [jbossweb-7.2. 0.Final-redhat-1.jar: 7.2.0.Final-redhat-1] в java.lang.Thread.run (Unknown Source) [rt.jar: 1.7.0_25]

<filter> 
    <filter-name>loginFilter</filter-name> 
    <display-name>Login Filter</display-name> 
    <filter-class>com.mas.etcs.webapp.filter.LoginFilter</filter-class> 
    <init-param> 
    <param-name>enabled</param-name> 
    <param-value>true</param-value> 
    </init-param> 
</filter> 
<filter-mapping> 
    <filter-name>loginFilter</filter-name> 
    <url-pattern>/login.jsp</url-pattern> 
</filter-mapping> 
<filter-mapping> 
    <filter-name>loginFilter</filter-name> 
    <url-pattern>/logout.jsp</url-pattern> 
</filter-mapping> 

<servlet> 
    <servlet-name>login</servlet-name> 
    <display-name>Login Servlet</display-name> 
    <servlet-class>com.mas.etcs.webapp.action.LoginServlet</servlet-class> 
    <init-param> 
    <param-name>authURL</param-name> 
    <param-value>j_security_check</param-value> 
    </init-param> 
    <init-param> 
    <param-name>isSecure</param-name> 
    <param-value>false</param-value> 
    </init-param> 
    <init-param> 
    <param-name>encrypt-password</param-name> 
    <param-value>true</param-value> 
    </init-param> 
    <init-param> 
    <param-name>algorithm</param-name> 
    <param-value>SHA</param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

Я смотрю на это дело более чем через неделю, и я схожу с ума нужна помощь.

+0

Моей первой ошибкой был алгоритм SHA. Мои сервлеты работали нормально, и мой старый сервлет входа в систему использовал для ввода имени пользователя и пароля из веб-формы, и после некоторой проверки, наконец, он использовал другое перенаправление для j_security с помощью usernaem и SHA hex password. В результате серверный модуль безопасности уже получал пароль с помощью sha encription, а затем он делал еще одну подписку на этот пароль, а затем проверял базу данных, в результате пароль всегда был ложным. – Shanewaj

ответ

0

Большинство моих проблем решены после того, как я положил модуль оракула в подсистему ee.

<subsystem xmlns="urn:jboss:domain:ee:1.1"> 
    <spec-descriptor-property-replacement>false 
    </spec-descriptor-property-replacement> 
    <jboss-descriptor-property-replacement>true 
    </jboss-descriptor-property-replacement> 
    <global-modules> 
     <module name="com.oracle.ojdbc" slot="main" /> 
    </global-modules> 
</subsystem> 

Все еще борьба с system.out.

Смежные вопросы