[ 
https://issues.apache.org/jira/browse/ISIS-815?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14063760#comment-14063760
 ] 

Dan Haywood edited comment on ISIS-815 at 7/16/14 5:31 PM:
-----------------------------------------------------------

Hi Martin,
Just double checked, is definitely an issue.

Possibly a bit large for an example, but the todo app demonstrates the issue.

to set up:
- pull down from snapshot (eg 
https://github.com/apache/isis/tree/27e2596c475ee380c78c3a17e9cd8cb33f968f6e)
- mvn clean install   // to build everything, then
- cd example/application/quickstart_wicket_restful_jdo
  cd webapp
  mvn jetty:run

... should run fine, and should be able to navigate to 
http://localhost:8080/quickstart_wicket_restful_jdo-webapp/wicket  (can login 
using sven/pass, though no need)

Now, edit IsisWicketApplication, change:

    @Override
    protected void internalInit() {
        setResourceSettings(new IsisResourceSettings(this));
        super.internalInit();
    }

    @Override
    protected void init() {
        ...
   }


to:

    @Override
    protected void internalInit() {
        super.internalInit();
    }

    @Override
    protected void init() {
        setResourceSettings(new IsisResourceSettings(this));
        ...
   }

when run the app and hit the same URL, hit a redirect loop.



The stack trace I got is below; I think the redirect loop is because I'm 
failing to find an i18n resource for something (the breadcrumb panel, by the 
looks of things) that is rendered on our error page.


18:22:52,846  [RequestCycleExtra    811338959@qtp-1904504032-5 WARN ]  Handling 
the following exception
java.util.MissingResourceException: Unable to find property: 'noMatches' for 
component: theme:breadcrumbs:breadcrumbs 
[class=com.vaynberg.wicket.select2.Select2Choice]. Locale: null, style: null
        at org.apache.wicket.Localizer.getString(Localizer.java:237)
        at org.apache.wicket.Localizer.getString(Localizer.java:130)
        at org.apache.wicket.Component.getString(Component.java:1892)
        at org.apache.wicket.Component.getString(Component.java:1879)
        at 
com.vaynberg.wicket.select2.AbstractSelect2Choice.onInitialize(AbstractSelect2Choice.java:175)
        at org.apache.wicket.Component.fireInitialize(Component.java:876)
        at 
org.apache.wicket.MarkupContainer.internalInitialize(MarkupContainer.java:961)
        at 
org.apache.wicket.MarkupContainer.addedComponent(MarkupContainer.java:938)
        at org.apache.wicket.MarkupContainer.add(MarkupContainer.java:174)
        at 
org.apache.wicket.MarkupContainer.addOrReplace(MarkupContainer.java:205)
        at 
org.apache.isis.viewer.wicket.ui.components.widgets.breadcrumbs.BreadcrumbPanel.onInitialize(BreadcrumbPanel.java:121)
        at org.apache.wicket.Component.fireInitialize(Component.java:876)
        at 
org.apache.wicket.MarkupContainer$3.component(MarkupContainer.java:967)
        at 
org.apache.wicket.MarkupContainer$3.component(MarkupContainer.java:963)
        at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:144)
        at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:162)
        at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:123)
        at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:192)
        at 
org.apache.wicket.MarkupContainer.visitChildren(MarkupContainer.java:875)
        at 
org.apache.wicket.MarkupContainer.internalInitialize(MarkupContainer.java:962)
        at org.apache.wicket.Page.internalPrepareForRender(Page.java:238)
        at org.apache.wicket.Component.render(Component.java:2317)
        at org.apache.wicket.Page.renderPage(Page.java:1024)
        at 
org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:122)
        at 
org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:221)
        at 
org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175)
        at 
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:862)
        at 
org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
        at 
org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261)
        at 
org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)
        at 
org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
        at 
org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
        at 
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
        at 
org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
        at 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
        at 
org.apache.isis.core.webapp.diagnostics.IsisLogOnExceptionFilter.doFilter(IsisLogOnExceptionFilter.java:52)
        at 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
        at 
org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
        at 
org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
        at 
org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
        at 
org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
        at 
org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
        at 
org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
        at 
org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
        at 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
        at 
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
        at 
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
        at 
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
        at 
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
        at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)
        at 
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
        at org.mortbay.jetty.Server.handle(Server.java:326)
        at 
org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
        at 
org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928)
        at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549)
        at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
        at 
org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
        at 
org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)




was (Author: danhaywood):
Hi Martin,
Just double checked, is definitely an issue.

Possibly a bit large for an example, but the todo app demonstrates the issue.

to set up:
- pull down from snapshot (eg 
https://github.com/apache/isis/tree/27e2596c475ee380c78c3a17e9cd8cb33f968f6e)
- mvn clean install   // to build everything, then
- cd example/application/quickstart_wicket_restful_jdo
  cd webapp
  mvn jetty:run

... should run fine, and should be able to navigate to 
http://localhost:8080/quickstart_wicket_restful_jdo-webapp/wicket  (can login 
using sven/pass, though no need)

Now, edit IsisWicketApplication, change:

    @Override
    protected void internalInit() {
        setResourceSettings(new IsisResourceSettings(this));
        super.internalInit();
    }

    @Override
    protected void init() {
        ...
   }


to:

    @Override
    protected void internalInit() {
        super.internalInit();
    }

    @Override
    protected void init() {
        setResourceSettings(new IsisResourceSettings(this));
        ...
   }

when run the app and hit the same URL, hit a redirect loop.



> Internationalization of Wicket UI elements (edit, ok, cancel, logout, about)
> ----------------------------------------------------------------------------
>
>                 Key: ISIS-815
>                 URL: https://issues.apache.org/jira/browse/ISIS-815
>             Project: Isis
>          Issue Type: Improvement
>          Components: Viewer: Wicket
>    Affects Versions: viewer-wicket-1.5.0
>            Reporter: Dan Haywood
>            Assignee: Dan Haywood
>            Priority: Minor
>             Fix For: viewer-wicket-1.6.0
>
>
> Using Wicket's built-in i18n capabilities, but tweaked so that 
> application-scoped properties override page-scope properties (rather than 
> other way around)



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to