Hi,

I have the following code in my MyApplication class:

{CODE}

public void init() {
    super.init();
    getRequestCycleSettings().setGatherExtendedBrowserInfo(true);
    getResourceSettings().setThrowExceptionOnMissingResource(false);

    ...
}

public Session newSession(Request request, Response response) {
        MySession session = new MySession(request);

        // determine default language from the browser
        String defaultLanguage = null;
        if (request != null && request.getClientUrl() != null && 
!request.getClientUrl().toString().isEmpty()) {
            defaultLanguage = 
session.getClientInfo().getProperties().getNavigatorLanguage();
        }
        Locale locale = session.getLocale();

        // no locale available
        if (locale == null) {
            if (defaultLanguage != null) {
                if (defaultLanguage.startsWith("en")) {
                    locale = new Locale("en", "EN");
                }
                else if (defaultLanguage.startsWith("de")) {
                    locale = new Locale("de", "DE");
                }
            }
            else {
                locale = new Locale("en", "EN");
            }

            session.setLocale(locale);
        }

        return session;
    }

{CODE}

I get an error, when I delete the Cookies in my browser and reload the actual 
page. The same error occurs when I delete the line ( if (request != null && 
request.getClientUrl() != null && request.getClientUrl().toString().isEmpty()) 
{ ) from the code example at building time from the TestHomePage.java.

The error is:

{ERROR}

java.lang.StackOverflowError
        
org.apache.wicket.session.HttpSessionStore.getHttpSession(HttpSessionStore.java:95)
        
org.apache.wicket.session.HttpSessionStore.getSessionId(HttpSessionStore.java:155)
        
org.apache.wicket.session.HttpSessionStore.lookup(HttpSessionStore.java:192)
        
org.apache.wicket.Application.fetchCreateAndSetSession(Application.java:1526)
        org.apache.wicket.Session.get(Session.java:156)
        org.apache.wicket.Application$1.onInstantiation(Application.java:279)
        
org.apache.wicket.application.ComponentInstantiationListenerCollection$1.notify(ComponentInstantiationListenerCollection.java:36)
        
org.apache.wicket.application.ComponentInstantiationListenerCollection$1.notify(ComponentInstantiationListenerCollection.java:34)
        
org.apache.wicket.util.listener.ListenerCollection.notify(ListenerCollection.java:80)
        
org.apache.wicket.application.ComponentInstantiationListenerCollection.onInstantiation(ComponentInstantiationListenerCollection.java:32)
        org.apache.wicket.Component.<init>(Component.java:678)
        org.apache.wicket.MarkupContainer.<init>(MarkupContainer.java:118)
        org.apache.wicket.Page.<init>(Page.java:206)
        org.apache.wicket.Page.<init>(Page.java:170)
        org.apache.wicket.markup.html.WebPage.<init>(WebPage.java:74)
        
org.apache.wicket.markup.html.pages.BrowserInfoPage.<init>(BrowserInfoPage.java:66)
        
org.apache.wicket.protocol.http.WebSession.newBrowserInfoPage(WebSession.java:239)
        
org.apache.wicket.protocol.http.WebSession.getClientInfo(WebSession.java:216)

{ERROR}

Any ideas why that happens?

Thank you,
Andre
-- 
Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir
belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org

Reply via email to