<br><font size=2 face="sans-serif">Hello everybody,</font>
<br>
<br><font size=2 face="sans-serif">At first sorry about my English, I am
going to improve it in a course this year. The question is the next: I
am trying to run OpenCms in a Websphere Server  and after the corresponding
configuration I have a problems with the redirection and the logout.  In
Tomcat there aren`t problems but in WebSphere the redirect after the OpenCms
demo logout doesn't work. I read in other forums some answers  refering
about the WebSphere  problems with redirection, and I change in the
CmsWorkplace class  the redirect of the method sendCmsRedirect to
a Forward like this:</font>
<br>
<br><font size=2 face="Courier New"> </font><font size=2 color=#820040 face="Courier New"><b>public</b></font><font size=2 face="Courier New">
</font><font size=2 color=#820040 face="Courier New"><b>void</b></font><font size=2 face="Courier New">
sendCmsRedirect(String location) </font><font size=2 color=#820040 face="Courier New"><b>throws</b></font><font size=2 face="Courier New">
IOException, ServletException {</font>
<br>
<br><font size=2 face="Courier New">        </font><font size=2 color=#3f8080 face="Courier New">//
TOOD: IBM Websphere v5 has problems here, use forward instead (which has
other problems)</font>
<br><font size=2 color=#3f8080 face="Courier New">     
    // This is the old code before my changes...</font>
<br><font size=2 face="Courier New">        </font><font size=2 color=#3f8080 face="Courier New">//
getJsp().getResponse().sendRedirect(OpenCms.getSystemInfo().getOpenCmsContext()
+ location);</font>
<br><font size=2 face="Courier New">         
  </font>
<br><font size=2 face="Courier New">      setForwarded(</font><font size=2 color=#820040 face="Courier New"><b>true</b></font><font size=2 face="Courier New">);</font>
<br><font size=2 face="Courier New">         
    </font>
<br><font size=2 face="Courier New">      CmsUriSplitter
splitter = </font><font size=2 color=#820040 face="Courier New"><b>new</b></font><font size=2 face="Courier New">
CmsUriSplitter(OpenCms.<i>getSystemInfo</i>().getOpenCmsContext() + location);</font>
<br><font size=2 face="Courier New">      Map params = CmsRequestUtil.<i>createParameterMap</i>(splitter.getQuery());</font>
<br><font size=2 face="Courier New">      sendForward(splitter.getPrefix(),
params);</font>
<br><font size=2 face="Courier New">         
  </font>
<br><font size=2 face="Courier New">        </font>
<br><font size=2 face="Courier New"> }</font>
<br>
<br><font size=2 face="Courier New"> </font><font size=2 color=#820040 face="Courier New"><b>public</b></font><font size=2 face="Courier New">
</font><font size=2 color=#820040 face="Courier New"><b>void</b></font><font size=2 face="Courier New">
sendForward(String location, Map params) </font><font size=2 color=#820040 face="Courier New"><b>throws</b></font><font size=2 face="Courier New">
IOException, ServletException {</font>
<br>
<br><font size=2 face="Courier New">        setForwarded(</font><font size=2 color=#820040 face="Courier New"><b>true</b></font><font size=2 face="Courier New">);</font>
<br><font size=2 face="Courier New">        </font><font size=2 color=#3f8080 face="Courier New">//
params must be arrays of String, ensure this is the case</font>
<br><font size=2 face="Courier New">        params
= CmsRequestUtil.<i>createParameterMap</i>(params);</font>
<br><font size=2 face="Courier New">        CmsRequestUtil.<i>forwardRequest</i>(getJsp().link(location),
params, getJsp().getRequest(), getJsp().getResponse());</font>
<br><font size=2 face="Courier New">    }</font>
<br>
<br>
<br><font size=2 face="Courier New">////////////////////////////////////////////////////////////////////////////////////////////////////////////////////</font>
<br>
<br><font size=2 face="Courier New">And in CmsJspLoginBean class I change
the method logout and put the next code (similar to login...):</font>
<br>
<br>
<br>
<br><font size=2 color=#820040 face="Courier New"><b>public</b></font><font size=2 face="Courier New">
</font><font size=2 color=#820040 face="Courier New"><b>void</b></font><font size=2 face="Courier New">
login(String userName, String password, String projectName, String redirectUri)
</font><font size=2 color=#820040 face="Courier New"><b>throws</b></font><font size=2 face="Courier New">
IOException {</font>
<br>
<br><font size=2 face="Courier New">        login(userName,
password, projectName);</font>
<br><font size=2 face="Courier New">        </font><font size=2 color=#820040 face="Courier New"><b>if</b></font><font size=2 face="Courier New">
(</font><font size=2 color=#0021bf face="Courier New">m_loginException</font><font size=2 face="Courier New">
== </font><font size=2 color=#820040 face="Courier New"><b>null</b></font><font size=2 face="Courier New">)
{</font>
<br><font size=2 face="Courier New">         
  </font><font size=2 color=#820040 face="Courier New"><b>if</b></font><font size=2 face="Courier New">
(redirectUri != </font><font size=2 color=#820040 face="Courier New"><b>null</b></font><font size=2 face="Courier New">)
{</font>
<br><font size=2 face="Courier New">         
      getResponse().sendRedirect(</font>
<br><font size=2 face="Courier New">         
          OpenCms.<i>getLinkManager</i>().substituteLink(getCmsObject(),
redirectUri, </font><font size=2 color=#820040 face="Courier New"><b>null</b></font><font size=2 face="Courier New">,
</font><font size=2 color=#820040 face="Courier New"><b>true</b></font><font size=2 face="Courier New">));</font>
<br><font size=2 face="Courier New">         
  } </font><font size=2 color=#820040 face="Courier New"><b>else</b></font><font size=2 face="Courier New">
{</font>
<br><font size=2 face="Courier New">         
      getResponse().sendRedirect(getFormLink());</font>
<br><font size=2 face="Courier New">         
  }</font>
<br><font size=2 face="Courier New">        }</font>
<br><font size=2 face="Courier New">    }</font>
<br>
<br><font size=2 face="Courier New"> </font><font size=2 color=#820040 face="Courier New"><b>public</b></font><font size=2 face="Courier New">
</font><font size=2 color=#820040 face="Courier New"><b>void</b></font><font size=2 face="Courier New">
logout(String redirectUri) </font><font size=2 color=#820040 face="Courier New"><b>throws</b></font><font size=2 face="Courier New">
IOException {</font>
<br>
<br><font size=2 face="Courier New">     HttpSession session
= getRequest().getSession(</font><font size=2 color=#820040 face="Courier New"><b>false</b></font><font size=2 face="Courier New">);</font>
<br><font size=2 face="Courier New">     </font><font size=2 color=#820040 face="Courier New"><b>if</b></font><font size=2 face="Courier New">
(session != </font><font size=2 color=#820040 face="Courier New"><b>null</b></font><font size=2 face="Courier New">)
{</font>
<br><font size=2 face="Courier New">         
session.invalidate();</font>
<br><font size=2 face="Courier New">     }</font>
<br><font size=2 face="Courier New">     </font><font size=2 color=#3f8080 face="Courier New">//
logout was successful</font>
<br><font size=2 face="Courier New">     </font><font size=2 color=#820040 face="Courier New"><b>if</b></font><font size=2 face="Courier New">
(</font><font size=2 color=#0021bf face="Courier New"><i>LOG</i></font><font size=2 face="Courier New">.isInfoEnabled())
{</font>
<br><font size=2 face="Courier New">        </font><font size=2 color=#0021bf face="Courier New"><i>LOG</i></font><font size=2 face="Courier New">.info(Messages.<i>get</i>().getBundle().key(</font>
<br><font size=2 face="Courier New">         
  Messages.</font><font size=2 color=#0021bf face="Courier New"><i>LOG_LOGOUT_SUCCESFUL_3</i></font><font size=2 face="Courier New">,</font>
<br><font size=2 face="Courier New">         
  getRequestContext().currentUser().getName(),</font>
<br><font size=2 face="Courier New">         
  getRequestContext().addSiteRoot(getRequestContext().getUri()),</font>
<br><font size=2 face="Courier New">         
  getRequestContext().getRemoteAddress()));</font>
<br><font size=2 face="Courier New">        }</font>
<br><font size=2 face="Courier New">        </font>
<br><font size=2 face="Courier New">      </font><font size=2 color=#820040 face="Courier New"><b>if</b></font><font size=2 face="Courier New">
(redirectUri != </font><font size=2 color=#820040 face="Courier New"><b>null</b></font><font size=2 face="Courier New">)
{</font>
<br><font size=2 face="Courier New">         
getResponse().sendRedirect(</font>
<br><font size=2 face="Courier New">         
      OpenCms.<i>getLinkManager</i>().substituteLink(getCmsObject(),
redirectUri, </font><font size=2 color=#820040 face="Courier New"><b>null</b></font><font size=2 face="Courier New">,
</font><font size=2 color=#820040 face="Courier New"><b>true</b></font><font size=2 face="Courier New">));</font>
<br><font size=2 face="Courier New">      } </font><font size=2 color=#820040 face="Courier New"><b>else</b></font><font size=2 face="Courier New">
{</font>
<br><font size=2 face="Courier New">         
  getResponse().sendRedirect(getFormLink());</font>
<br><font size=2 face="Courier New">      }</font>
<br><font size=2 face="Courier New">       </font>
<br><font size=2 face="Courier New"> }</font>
<br>
<br>
<br><font size=2 face="Courier New">After the changes, the problem still
apear. The parameter ?path=/demo_en/extra/login.jsp after the logout in
the url appear but the redirection doesn't work. I don't know what many
things can I do.</font>
<br>
<br><font size=2 face="sans-serif">Thanks you in advance for any help you
can give,</font>
<br>
<br><font size=2 face="sans-serif">ALEJANDRO</font>
<br><font size=2 face="sans-serif">email: Alejandro.Latorre.Miguel@everis.com</font>
<table width=100%>
<tr>
<td width=100%></table>
<br>
<br>
<br>
<br><font size=2 face="Courier New"> </font>
<br><font size=1 color=#5f5f5f face="Arial"><b><br>
AVISO DE CONFIDENCIALIDAD.</b><br>
Este correo y la información contenida o adjunta al mismo es privada y
confidencial y va dirigida exclusivamente a su destinatario. everis informa
a quien pueda haber recibido este correo por error que contiene información
confidencial cuyo uso, copia, reproducción o distribución está expresamente
prohibida. Si no es Vd. el destinatario del mismo y recibe este correo
por error, le rogamos lo ponga en conocimiento del emisor y proceda a su
eliminación sin copiarlo, imprimirlo o utilizarlo de ningún modo.<br>
<b><br>
CONFIDENTIALITY WARNING.</b>This message and the information contained
in or attached to it are private and confidential and intended exclusively
for the addressee. everis informs to whom it may receive it in error that
it contains privileged information and its use, copy, reproduction or distribution
is prohibited. If you are not an intended recipient of this E-mail, please
notify the sender, delete it and do not read, act upon, print, disclose,
copy, retain or redistribute any portion of this E-mail.</font>
<br>