Here is SearchDealerPage.

package gov.xyz.abc.view.asm;

import gov.xyz.abc.business.AsmAdminService;
import gov.xyz.abc.common.AppSession;
import gov.xyz.abc.common.AuthenticatedPage;
import gov.xyz.abc.common.DealerDetails;
import gov.xyz.abc.common.abcException;
import gov.xyz.abc.model.abcUser;
import gov.xyz.abc.model.abcUserSearchTO;
import gov.xyz.abc.util.DefaultFocusBehavior;
import gov.xyz.abc.util.abcConstants;
import gov.xyz.abc.util.abcErrConstant;
import gov.xyz.abc.util.abcUtils;
import gov.xyz.wktcommon.components.ErroringTextField;

import org.apache.commons.lang3.StringUtils;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.markup.html.form.AjaxButton;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.form.Form;
import org.apache.wicket.model.CompoundPropertyModel;
import org.apache.wicket.model.Model;
import org.apache.wicket.request.mapper.parameter.PageParameters;
import org.apache.wicket.spring.injection.annot.SpringBean;
import org.apache.wicket.validation.validator.StringValidator;


/**
 * Search Dealer Page.
 *
 * @author Pavankumar Appana
 * @since 08/05/2011
 */
public class SearchDealerPage extends AuthenticatedPage {

    /**
     *
     */
    private static final long serialVersionUID = 1L;
    @SpringBean
    private AsmAdminService adminService;
    private AbcUserSearchTO abcUserSearch;
    private AbcUser abcUser = null;

    //callingFromWhichScreen flag is to indicate whether this screen is
called for dealer information or dealer update.
    //Set callingFromWhichScreen to "update" for dealer update, "search"
for dealer information while calling.
    public SearchDealerPage(PageParameters pageParameters) {
        final String callingFromWhichScreen =
pageParameters.get(abcConstants.PARAM_CALLING_SCREEN).toString();

        abcUserSearch = new abcUserSearchTO();

        //Search Form
        final Form<AbcUserSearchTO> searchForm =
                new Form<AbcUserSearchTO>("searchForm", new
CompoundPropertyModel<AbcUserSearchTO>(abcUserSearch));
        searchForm.setOutputMarkupId(true);
        searchForm.setMarkupId("searchFormId");
        add(searchForm);
        final Label pagetitle = new Label("pageTitle", new Model<String>());

        if (abcConstants.UPDATE_SCREEN.equals(callingFromWhichScreen)) {
            pagetitle.setDefaultModelObject("Search Dealer");

        } else if
(abcConstants.SEARCH_SCREEN.equals(callingFromWhichScreen)) {
            pagetitle.setDefaultModelObject("Dealer Inquiry");
        }

        add(pagetitle);

        final ErroringTextField<String> dealerIDFld = new
ErroringTextField<String>("searchDealer");
        dealerIDFld.setOutputMarkupId(true);
        dealerIDFld.setMarkupId("searchDealer");
        dealerIDFld.setRequired(true);
        dealerIDFld.add(StringValidator.minimumLength(2));
        dealerIDFld.add(new DefaultFocusBehavior());

        if (dealerIDFld.getSizeInBytes() < 5) {

            dealerIDFld.add(abcUtils.getIntegerPatternValidator());
        }

        searchForm.add(dealerIDFld);


        final AjaxButton searchSubmitButton = new AjaxButton("search") {
            private static final long serialVersionUID = 1L;

            @Override
            protected void onSubmit(AjaxRequestTarget target, Form<?> form)
{
                sbpanel.saveState();
                try {
                    if (dealerIDFld.getValue().length() > 5) {
                        abcUser =
adminService.getDealerByDealerFFL(dealerIDFld.getInput());

                    } else if (abcUserSearch.getSearchDealer() != null &&
!"".equals(abcUserSearch.getSearchDealer())) {

                        abcUser =
adminService.getDealerByDealerId(StringUtils.leftPad(abcUserSearch.getSearchDealer(),
5, '0'));
                        //abcUser =
adminService.getDealerByDealerId(dealerIDFld.getInput());
                    }

                    if (abcUser == null) {
                        if (dealerIDFld.getValue().length() <= 5)
                            form.error("Dealer does not exist with entered
Dealer ID, please search again with different Dealer ID.");
                        else
                            form.error("Dealer does not exist with entered
FFL#, please search again with different FFL#.");
                        target.add(form);
                    } else {
                        if
(abcConstants.UPDATE_SCREEN.equals(callingFromWhichScreen)) {
                            PageParameters pageParameters = new
PageParameters();

                            pageParameters.set("abcUser", abcUser);

                            DealerDetails dealerDetails = new
DealerDetails();

dealerDetails.setFflNumber(abcUser.getFflNumber());

dealerDetails.setDealerNumber(abcUser.getDealerNumber());
                            ((AppSession)
getSession()).setDealerDetails(dealerDetails);

                            setResponsePage(new ManageDealerPage(abcUser));

                        } else if
(abcConstants.SEARCH_SCREEN.equals(callingFromWhichScreen)) {
                            setResponsePage(new
DealerInformationPage(abcUser));
                        }
                    }

                } catch (abcException abcException) {
                    if
(abcException.getMessage().contains(abcErrConstant.INVALID_INPUT) ||
abcException.getMessage().contains(abcErrConstant.NONNUMERIC_INPUT)) {
                        sbpanel.saveError(this, new abcException("Invalid
Dealer ID entered. Only numbers are allowed."));
                    } else {
                        sbpanel.saveError(this, new abcException("Error
when searching Dealer. Make sure you have entered valid dealer Id."));
                    }
                }
            }

            @Override
            protected void onError(AjaxRequestTarget target, Form<?> form) {
                super.onError(target, form);
                target.add(searchForm);
                target.add(sbpanel);
            }

        };
        searchSubmitButton.setMarkupId("searchBtn");
        searchForm.setDefaultButton(searchSubmitButton);
        searchForm.add(searchSubmitButton);

        //Reset Button
        searchForm.add(new AjaxButton("searchClear") {
            private static final long serialVersionUID = 1L;

            @Override
            protected void onSubmit(AjaxRequestTarget target, Form<?> form)
{
                sbpanel.saveState();

                PageParameters pageParameters = new PageParameters();
                pageParameters.set(abcConstants.PARAM_CALLING_SCREEN,
callingFromWhichScreen);

                AbcUserSearchTO AbcUserSearchTO =
searchForm.getModelObject();
                AbcUserSearchTO.setSearchName("");

                setResponsePage(new SearchDealerPage(pageParameters));
            }
        }.setDefaultFormProcessing(false).setMarkupId("srchClearBtn"));
    }
}

On Wed, Nov 18, 2015 at 11:28 AM, Francois Meillet <
francois.meil...@gmail.com> wrote:

> Could you show us the SearchDealerPage code
>
> François
>
>
>
>
>
>
>
>
> Le 18 nov. 2015 à 17:25, Mihir Chhaya <mihir.chh...@gmail.com> a écrit :
>
> > Hello,
> >
> > I am using Wicket 7 + Spring 4.x + Hibernate 4.x (recently migrated from
> > Wicket 1.4).
> >
> > Since deployment of the app on JBOSS, the application is crashing with
> > OutOfMemory error for PermGen. We are at the point of rolling back to 1.4
> > as application was working fine without such issue; doesn't necessarily
> > mean Wicket 7 is an issue. There is OutOfMemory error reported with
> > Wicket+Spring for Wicket 6.20, but the issue status shows fixed.
> >
> > JBOSS application server PermGen is 512MB, so doesn't seem that be an
> issue.
> >
> > Here is the stacktrace (First and Second). Second seems to be the result
> of
> > First one.
> >
> > Could anybody shade some light? I ran with some load on my local (tomcat
> as
> > well as on JBOSS) and monitored using VisualVM. PermGen is remaining
> > between 20 and 100 MB.
> >
> >
> > First
> > =========
> > 16:29:19,808 ERROR
> >
> [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/fes].[default]]
> > (http-/162.143.93.98:8543-34) JBWEB000236: Servlet.service() for servlet
> > default threw exception: java.lang.OutOfMemoryError: PermGen space
> > at sun.misc.Unsafe.defineClass(Native Method) [rt.jar:1.7.0_75]
> > at sun.reflect.ClassDefiner.defineClass(ClassDefiner.java:63)
> > [rt.jar:1.7.0_75]
> > at
> >
> sun.reflect.MethodAccessorGenerator$1.run(MethodAccessorGenerator.java:399)
> > [rt.jar:1.7.0_75]
> > at
> >
> sun.reflect.MethodAccessorGenerator$1.run(MethodAccessorGenerator.java:396)
> > [rt.jar:1.7.0_75]
> > at java.security.AccessController.doPrivileged(Native Method)
> > [rt.jar:1.7.0_75]
> > at
> >
> sun.reflect.MethodAccessorGenerator.generate(MethodAccessorGenerator.java:395)
> > [rt.jar:1.7.0_75]
> > at
> >
> sun.reflect.MethodAccessorGenerator.generateSerializationConstructor(MethodAccessorGenerator.java:113)
> > [rt.jar:1.7.0_75]
> > at
> >
> sun.reflect.ReflectionFactory.newConstructorForSerialization(ReflectionFactory.java:331)
> > [rt.jar:1.7.0_75]
> > at
> >
> java.io.ObjectStreamClass.getSerializableConstructor(ObjectStreamClass.java:1376)
> > [rt.jar:1.7.0_75]
> > at java.io.ObjectStreamClass.access$1500(ObjectStreamClass.java:72)
> > [rt.jar:1.7.0_75]
> > at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:493)
> > [rt.jar:1.7.0_75]
> > at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:468)
> > [rt.jar:1.7.0_75]
> > at java.security.AccessController.doPrivileged(Native Method)
> > [rt.jar:1.7.0_75]
> > at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:468)
> > [rt.jar:1.7.0_75]
> > at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:365)
> > [rt.jar:1.7.0_75]
> > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1133)
> > [rt.jar:1.7.0_75]
> > at
> >
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1547)
> > [rt.jar:1.7.0_75]
> > at
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1508)
> > [rt.jar:1.7.0_75]
> > at
> >
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431)
> > [rt.jar:1.7.0_75]
> > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177)
> > [rt.jar:1.7.0_75]
> > at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1377)
> > [rt.jar:1.7.0_75]
> > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1173)
> > [rt.jar:1.7.0_75]
> > at
> >
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1547)
> > [rt.jar:1.7.0_75]
> > at
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1508)
> > [rt.jar:1.7.0_75]
> > at
> >
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431)
> > [rt.jar:1.7.0_75]
> > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177)
> > [rt.jar:1.7.0_75]
> > at
> >
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1547)
> > [rt.jar:1.7.0_75]
> > at
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1508)
> > [rt.jar:1.7.0_75]
> > at
> >
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431)
> > [rt.jar:1.7.0_75]
> > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177)
> > [rt.jar:1.7.0_75]
> > at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:347)
> > [rt.jar:1.7.0_75]
> > at
> >
> org.apache.wicket.serialize.java.JavaSerializer$SerializationCheckerObjectOutputStream.writeObjectOverride(JavaSerializer.java:260)
> > [wicket-core-7.0.0.jar:7.0.0]
> >
> >
> > Second:
> > =======
> > 16:24:22,674 ERROR [org.apache.wicket.DefaultExceptionMapper]
> > (http-/162.143.93.97:8543-14) Unexpected error occurred:
> > org.apache.wicket.WicketRuntimeException: Can't instantiate page using
> > constructor 'public
> >
> gov.xyz.abc.view.asm.SearchDealerPage(org.apache.wicket.request.mapper.parameter.PageParameters)'
> > and argument 'callingFromWhichScreen=[search]'. An exception has been
> > thrown during construction!
> > at
> >
> org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:194)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:99)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.DefaultMapperContext.newPageInstance(DefaultMapperContext.java:106)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.core.request.handler.PageProvider.resolvePageInstance(PageProvider.java:271)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.core.request.handler.PageProvider.getPageInstance(PageProvider.java:169)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.request.handler.render.PageRenderer.getPage(PageRenderer.java:78)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.request.handler.render.WebPageRenderer.isPageStateless(WebPageRenderer.java:287)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.request.handler.render.WebPageRenderer.shouldRenderPageAndWriteResponse(WebPageRenderer.java:329)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:193)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.core.request.handler.RequestSettingRequestHandler.respond(RequestSettingRequestHandler.java:78)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:865)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
> > [wicket-request-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:261)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:203)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:284)
> > [wicket-core-7.0.0.jar:7.0.0]
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
> > [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
> > [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
> > at
> >
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
> > [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
> > at
> >
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149)
> > [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
> > at
> >
> org.jboss.modcluster.container.jbossweb.JBossWebContext$RequestListenerValve.event(JBossWebContext.java:91)
> > at
> >
> org.jboss.modcluster.container.jbossweb.JBossWebContext$RequestListenerValve.invoke(JBossWebContext.java:72)
> > at
> >
> org.jboss.as.web.session.ClusteredSessionValve.handleRequest(ClusteredSessionValve.java:134)
> > [jboss-as-web-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]
> > at
> >
> org.jboss.as.web.session.ClusteredSessionValve.invoke(ClusteredSessionValve.java:99)
> > [jboss-as-web-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]
> > at org.jboss.as.web.session.JvmRouteValve.invoke(JvmRouteValve.java:92)
> > [jboss-as-web-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]
> > at org.jboss.as.web.session.LockingValve.invoke(LockingValve.java:64)
> > [jboss-as-web-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]
> > at
> >
> org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169)
> > [jboss-as-web-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]
> > at
> >
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:145)
> > [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
> > at
> >
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97)
> > [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
> > at
> >
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102)
> > [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
> > at
> >
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336)
> > [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
> > at
> >
> org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:880)
> > [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
> > at
> >
> org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:607)
> > [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
> > at
> org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:2036)
> > [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
> > at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_75]
> > Caused by: java.lang.reflect.InvocationTargetException
> > at sun.reflect.GeneratedConstructorAccessor281.newInstance(Unknown
> Source)
> > [:1.7.0_75]
> > at
> >
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> > [rt.jar:1.7.0_75]
> > at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
> > [rt.jar:1.7.0_75]
> > at
> >
> org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:171)
> > [wicket-core-7.0.0.jar:7.0.0]
> > Thanks,
> > -Mihir.
>
>

Reply via email to