Thanks Igor !

I removed the filter init params, tried with a fresh 1.3.x from subversion, still did not work.

But :-), it's not wicket's fault, it's f***** oc4j. The redirect after the login page (I am using the acegi+wicket approach from the wiki) is not handled right.. oc4j does a redirect with a relative url the wrong way, it's relative to the webapp context, but not including the servlet path.

I am playing around to find a workaround, if I am lucky I'll post the solution here, in case other unlucky oc4j users are out there :-).

Thanks again,
Tom



Igor Vaynberg schrieb:
interesting

1) you can remove filter init params, when wicket servlet is used the
path can be determined from servletrequest
2) can you try with wicket-1.3.x branch to see if we have already fixed it
3) if its still broken file a jira issue

-igor

On Fri, Jun 20, 2008 at 5:19 AM, Thomas Lutz <[EMAIL PROTECTED]> wrote:
Hi again !

I've tried to solve my issue, but had no luck so far. Here is the web.xml
snippet I use:

  <servlet>
      <servlet-name>ACSWebapp</servlet-name>

<servlet-class>org.apache.wicket.protocol.http.WicketServlet</servlet-class>
      <init-param>
          <param-name>applicationFactoryClassName</param-name>

<param-value>org.apache.wicket.spring.SpringWebApplicationFactory</param-value>
      </init-param>
      <init-param>
          <param-name>filterPath</param-name>
          <param-value>app/*</param-value>
      </init-param>
      <init-param>
          <param-name>filterMappingUrlPattern</param-name>
          <param-value>app/*</param-value>
      </init-param>
      <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
      <servlet-name>ACSWebapp</servlet-name>
      <url-pattern>/app/*</url-pattern>
  </servlet-mapping>

I am not sure if I need the filterPath and filterMappingUrlPattern init
parameters, but I left them in.

My application is deployed with an application.xml containing

<module>
  <web>
    <web-uri>ACS.war</web-uri>
    <context-root>ACS</context-root>
  </web>
 </module>

When I call http://ip:port/ACS/app/ I am redirected to

http://ip:port/ACS/;jsessionid=d5a0c3193157101e4c749c214a05985eb6afb0ce6bc9.e34RaxuNah4Rai0LahqTaNuRa34Te6fznA5Pp7ftolbGmkTy?wicket:bookmarkablePage=%3Aat.schnirkel.acs.MySignInPage

which of course does not work.

Mapping the servlet to /* works, but then my Acegi filter is not invoked,
because OC4J seems to ignore urls without a page in front of the "?",
although I've configured the filter with a /*

Any ideas on this ?

Thanks a lot,
Tom

My environment is OC4J, java 4 and wicket 1.3.3.

Mattom schrieb:
Hi !

No, sorry, maybe i was not precise enough, when i have the /app/* mapping,
i can access my "HomePage" directly, but all links from the HomePage as well
as the style sheet link and some image links (all within wicket:link) don't
work, as the "/app/" part is missing. The only images working are the one
from the tree I use as menu.

Basically I don't need the /app/ subdirectory, but servlet filters in oc4j
seem to be rather buggy, and they are not called, if you don't have either a
page or a directory, just ip:port/context/?... does not work, as the filters
are not called.

So I tried to "trick" the filter (acegi) by adding a subdirectory... I
guess I have to add some filterPath or filterMappingPath flag to the
init-params of the servlet, but so far nothing worked. I'll dig into the
sources deeper tomorrow.

Thanks !
Tom

-------- Original-Nachricht --------

Datum: Thu, 19 Jun 2008 21:42:45 +0100
Von: "Gwyn Evans" <[EMAIL PROTECTED]>
An: [email protected]
Betreff: Re: wicket servlet mapping to subdirectory

When you say "I always get redirected to the root of the webapp", do you
mean when first trying to access your app, you have to go via a redirect
or
some such that takes you to "http://www.mysite.com/"; or similar?

The 'traditional' trick was to have an index.html that redirected to
"app/"
as below - any uise?

<html>
<head>
   <meta http-equiv="Refresh" content="0; url=app">
</head>
</html>

/Gwyn

On Thu, Jun 19, 2008 at 5:30 PM, Thomas Lutz <[EMAIL PROTECTED]> wrote:


Hi list !

I am forced to use the wicket servlet (1.3.3) instead of the filter

because

of oc4j.

I mapped the servlet to

<servlet-mapping>
     <servlet-name>Wicket Webapp</servlet-name>
     <url-pattern>/app/*</url-pattern>
</servlet-mapping>

This does not work, I always get redirected to the root of the webapp,

and

therefore none of my pages shows up. If I map to /*, everything works

fine,

but then my acegi filters to not work...

Is there any parameter I need to set to tell wicket about the different
location ? Or, is it possible to configure some fake name in front of

the

request strings "?" ?

Thanks a lot,
Tom

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to