2010-12-16 19 views
5

Mam do czynienia z dziwnym problemem z weblogic. Jedna z naszych stacji roboczych obsługuje 2 instancje weblogiczne. Problem polega na tym, że loguję się do jednego z nich, sesja na innym automatycznie wygasa i na odwrót. Co to może być? Jak sobie z tym poradzić?Problem z sesjami na weblogic

+0

Identyfikator logowania na obu komputerach? Czy logujesz się jako administrator? – duffymo

+0

Co masz na myśli przez identyfikator logowania? Nie ma znaczenia, pod który użytkownik loguję się, w każdym razie sesja na innej instancji automatycznie wygasa. – mykola

Odpowiedz

10

Jeśli identyfikator sesji jest przechowywany w pliku cookie po stronie klienta, upewnij się, że nazwa cookie nie jest taka sama w obu instancjach Weblogic.

Jednym ze sposobów, aby zmienić nazwę pliku cookie jest utworzenie pliku o nazwie weblogic.xml w swoim webapps (lub weblogic-application.xml w uszach, po prostu zastąpić tag WebLogic-web-app przez zawierające następujące WebLogic-aplikacja) (dostosować nazwę pliku cookie w zależności od potrzeb):

<?xml version="1.0" encoding="UTF-8"?> 
<weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/90"> 
    <session-descriptor> 
     <cookie-name>MyCookieName</cookie-name> 
    </session-descriptor> 
</weblogic-web-app> 
+0

cóż, spróbuję, ale w rzeczywistości jest to ta sama aplikacja (nie fizycznie, oczywiście) działa na obu instancjach: jedna jest dla potrzeb rozwoju, druga dla testów. Rzeczywiście, obie aplikacje mają ten sam plik weblogic.xml. Ale bardziej dziwne, że ten sam problem czasami występuje na innej stacji roboczej z naszym demo weblogic i jira. Z jakiegoś powodu niektórzy użytkownicy napotykają na ten sam problem: gdy użytkownik loguje się do jiry, automatycznie wylogowuje się z weblogic i vice versa. Jest to bardzo dziwne, biorąc pod uwagę, że występuje tylko z niektórymi wybranymi użytkownikami. – mykola

+0

mukola Zakładam, że brakuje ci różnych wojen/wdrożeń. Tak więc odmiany pliku weblogic.xml dla różnych wdrożeń – Aaron

+0

W WebLogic 8 jest to nadal ustawione w deskryptorze sesji, ale musisz dodać go jako parę nazwa/wartość , zobacz http://docs.oracle .com/cd/E13222_01/wls/docs81/webapp/weblogic_xml.html. Np .: CookieName TESTESESSION Peter

1

ponieważ są one uruchomione na tym samym komputerze, przeglądarka widzi jednego hosta (czyli localhost). ponieważ domyślny plik cookie sesji dla aplikacji webowych w języku Java to JSESSIONID i oba używają tej nazwy, nadpisują się nawzajem.

Rozwiązaniem jest otwarcie 2 okien przeglądarki IE przez dwukrotne uruchomienie IE. W takim przypadku otrzymają własny plik cookie sesji. Niefortunalty to nie działa w Firefoksie i Chrome.

Inne rozwiązanie zostało wymienione przez firmę nawre, poprzez nadanie 2 plikom cookie innej nazwy pliku cookie sesji.