Re: PageParameters & mounted pages
Hi Martin, Thank you very much for this explanation and suggestion! As you said, both are GET parameters (and actually, both are accessible thought page-parameters), so from a user point of view it is strange that one is not considered as a "request parameter". Consider a user, who used to get the parameter via the request-cycle. Later on, he decides to mount this parameter because the url becomes much nicer... I can hear from here: "Oops ! It does not work anymore, that's strange!" (trust me, I know what I talking about :p) So to answer your question if it should be the default or not: from my point of view it would be yes. But I do not have the whole picture on this mapper topic and don't know what could be the drawback(s)... What does other devs think about this? Does it make sense to be the default? I will try your suggestion anyway, thanks again! :) Best regards, Sebastien. On Wed, Nov 18, 2015 at 4:28 PM, Martin Grigorov wrote: > Hi Sebastien, > > The problem is that Request#getQueryParameters() is about - parameters in > the query string. > And "/mypage/${param}" uses parameter in the path. > Both of these are GET parameters but they are different. > > To get the correct values you should use something like: > > IRequestHandler handler = application.getRootRequestMapper().map(request); > if (handler instance of IPageClassRequestHandler) { > // cast and > use > org.apache.wicket.core.request.handler.IPageClassRequestHandler#getPageParameters > } > > You see this is much more time consuming operation than parsing the query > string parameters from a String (the url). > Maybe this should be the default, maybe not. I am not sure. > > You can also make use > of > org.apache.wicket.request.cycle.PageRequestHandlerTracker#getFirstHandler() > to skip the resolution of the IRequestMapper. > > Martin Grigorov > Wicket Training and Consulting > https://twitter.com/mtgrigorov > > On Wed, Nov 18, 2015 at 3:49 PM, Sebastien wrote: > > > Hi, > > > > I have a little concerns about PageParameters and mounted pages. > > > > On a first case - mypage?param=myvalue - I can retrieve param from both > > page-parameters and from Request#getQueryParameters() > > > > On a second case - mypage/myvalue (with a mounted page /mypage/${param}) > - > > I am able to retrieve param only from page-parameters, but not from the > > request cycle (Request#getQueryParameters()) > > > > Is it intended? > > > > I saw a previous thread on a similar topic, which suggests to parse > > requestCycle.getRequest().getUrl() but it looks a little bit weird to me > > and I was wondering if there is no other (built-in) feature... > > > > My context is the following: I am trying to secure a mounted page like > this > > (this is currently just a POC...) > > > > @OACCAuthorizeInstantiation(resource = "${myparam}", permission = "VIEW") > > > > In OACCAuthorizationStrategy#isInstantiationAuthorized(Class > > componentClass), I have access to the component class type, not the > > component/page instance so I cannot call #getPageParameters anyhow... > > > > > > Many thanks in advance, > > Sebastien > > >
Re: Adding line breaks in MessageDialog
Hi, You have to override #newLabel like this: @Override protected Component newLabel(String id, IModel model) { return super.newLabel(id, model).setEscapeModelStrings(false); } Hope this helps, Sebastien. On Wed, Nov 18, 2015 at 5:43 PM, smoothe19 wrote: > How can I add line breaks in the message content of a message dialog? > > I have tried > String message = "Text here: More text " ; > Dialog.setEscapeModelStrings(false); > Dialog.setModelObject(message); > > failed to work > > HTML: > > > java: > private void createDialog(){ > Dialog = new MessageDialog("dialog", "Information", "Text Here > > Text", > DialogButtons.YES_NO, DialogIcon.WARN) { > > > public void onClose(AjaxRequestTarget target, DialogButton button) > { > > > } >}; > >add(Dialog); > } > > -- > View this message in context: > http://apache-wicket.1842946.n4.nabble.com/Adding-line-breaks-in-MessageDialog-tp4672659.html > Sent from the Users forum mailing list archive at Nabble.com. > > - > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > For additional commands, e-mail: users-h...@wicket.apache.org > >
Re: Wicket 7 - OutOfMemory PermGen
Thanks, Christos. That is not the case though; we have Java 7 JDE from IDE to Application server. On Wed, Nov 18, 2015 at 12:43 PM, Christos Stieglitz wrote: > Just in case: > i recently had exactly the same problem. It turned out that it is not > related to Wicket at all. > > Do you use a Java8 JDK? Do you compile for Java7? > > The PermGen Exception happens at random times [*], always at the same > line in the code. Hence you assume you have some faulty code there. > But it is a JDK 8 -> 7 compatibility mode issue, not Wicket. > Before losing lots of hours (like i did) just check the settings of your > IDE. > > [*] under Windows 64bit twice as often as under Linux. > > HTH > > Christos > > > > > Am Wednesday, den 18.11.2015, 11:56 -0500 schrieb Mihir Chhaya: > > Martin, Yes. I am using Wicket 7.00. > > > > On Wed, Nov 18, 2015 at 11:55 AM, Mihir Chhaya > > wrote: > > > > > First, Thanks Francois for your quick looking into this. > > > > > > The SearchDealerPage is created as below. The link is menu option. > > > > > > BookmarkablePageLink dealerInquiryLink = new > > > BookmarkablePageLink("dealerInquiryLink", > SearchDealerPage.class, > > > searchPageParameters); > > > > > > > > > Thanks, > > > > > > -Mihir. > > > > > > > > > On Wed, Nov 18, 2015 at 11:50 AM, Francois Meillet < > > > francois.meil...@gmail.com> wrote: > > > > > >> Sorry, it's seems that there is a problem when you instanciate the > > >> SearchDealerPage instance > > >> > > >> How you instanciate it ? > > >> > > >> François > > >> > > >> > > >> > > >> > > >> > > >> > > >> > > >> > > >> Le 18 nov. 2015 à 17:46, Mihir Chhaya a > écrit : > > >> > > >> > Following are AbcUserSearchTO and AbcUser classes with DomainObject > > >> > implementation. > > >> > > > >> > public interface DomainObject extends Serializable { > > >> > > > >> >Long getId(); > > >> > } > > >> > > > >> > public class AbcUserSearchTO implements DomainObject { > > >> > > > >> > /** > > >> > * > > >> > */ > > >> > private static final long serialVersionUID = 1L; > > >> > > > >> > /* (non-Javadoc) > > >> > * @see gov.fdle.fpp.domain.DomainObject#getId() > > >> > */ > > >> > @Override > > >> > public Long getId() { > > >> > return null; > > >> > } > > >> > private String searchName; > > >> > private String searchDealer; > > >> > > > >> > /** > > >> > * @return the lastName > > >> > */ > > >> > public String getSearchName() { > > >> > return searchName; > > >> > } > > >> > > > >> > /** > > >> > * @param name the lastName to set > > >> > */ > > >> > public void setSearchName(String name) { > > >> >if (name == null){ > > >> >name = FppConstants.EMPTY_STRING; > > >> >} > > >> > this.searchName = name; > > >> > } > > >> > > > >> > /** > > >> > * @return the searchDealer > > >> > */ > > >> > public String getSearchDealer() { > > >> > return searchDealer; > > >> > } > > >> > > > >> > /** > > >> > * @param searchDealer the searchDealer to set > > >> > */ > > >> > public void setSearchDealer(String searchDealer) { > > >> > this.searchDealer = searchDealer; > > >> > } > > >> > } > > >> > > > >> > > > >> > public class AbcUser implements DomainObject { > > >> > > > >> > private static final long serialVersionUID = 1L; > > >> > public Long getId() { > > >> >return null; > > >> >} > > >> > > > >> > //ASM fields > > >> >private long userNbr; > > >> >private String userName; > > >> >private String password; > > >> >private String firstName; > > >> >private String lastName; > > >> > ...setter > > >> > getter > > >> > > > >> > } > > >> > > > >> > On Wed, Nov 18, 2015 at 11:43 AM, Francois Meillet < > > >> > francois.meil...@gmail.com> wrote: > > >> > > > >> >> and the abcUserSearchTO ? > > >> >> > > >> >> > > >> >> François > > >> >> > > >> >> > > >> >> > > >> >> > > >> >> > > >> >> > > >> >> > > >> >> > > >> >> Le 18 nov. 2015 à 17:40, Mihir Chhaya a > > >> écrit : > > >> >> > > >> >>> 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 o
Re: Wicket 7 - OutOfMemory PermGen
Just in case: i recently had exactly the same problem. It turned out that it is not related to Wicket at all. Do you use a Java8 JDK? Do you compile for Java7? The PermGen Exception happens at random times [*], always at the same line in the code. Hence you assume you have some faulty code there. But it is a JDK 8 -> 7 compatibility mode issue, not Wicket. Before losing lots of hours (like i did) just check the settings of your IDE. [*] under Windows 64bit twice as often as under Linux. HTH Christos Am Wednesday, den 18.11.2015, 11:56 -0500 schrieb Mihir Chhaya: > Martin, Yes. I am using Wicket 7.00. > > On Wed, Nov 18, 2015 at 11:55 AM, Mihir Chhaya > wrote: > > > First, Thanks Francois for your quick looking into this. > > > > The SearchDealerPage is created as below. The link is menu option. > > > > BookmarkablePageLink dealerInquiryLink = new > > BookmarkablePageLink("dealerInquiryLink", SearchDealerPage.class, > > searchPageParameters); > > > > > > Thanks, > > > > -Mihir. > > > > > > On Wed, Nov 18, 2015 at 11:50 AM, Francois Meillet < > > francois.meil...@gmail.com> wrote: > > > >> Sorry, it's seems that there is a problem when you instanciate the > >> SearchDealerPage instance > >> > >> How you instanciate it ? > >> > >> François > >> > >> > >> > >> > >> > >> > >> > >> > >> Le 18 nov. 2015 à 17:46, Mihir Chhaya a écrit : > >> > >> > Following are AbcUserSearchTO and AbcUser classes with DomainObject > >> > implementation. > >> > > >> > public interface DomainObject extends Serializable { > >> > > >> >Long getId(); > >> > } > >> > > >> > public class AbcUserSearchTO implements DomainObject { > >> > > >> > /** > >> > * > >> > */ > >> > private static final long serialVersionUID = 1L; > >> > > >> > /* (non-Javadoc) > >> > * @see gov.fdle.fpp.domain.DomainObject#getId() > >> > */ > >> > @Override > >> > public Long getId() { > >> > return null; > >> > } > >> > private String searchName; > >> > private String searchDealer; > >> > > >> > /** > >> > * @return the lastName > >> > */ > >> > public String getSearchName() { > >> > return searchName; > >> > } > >> > > >> > /** > >> > * @param name the lastName to set > >> > */ > >> > public void setSearchName(String name) { > >> >if (name == null){ > >> >name = FppConstants.EMPTY_STRING; > >> >} > >> > this.searchName = name; > >> > } > >> > > >> > /** > >> > * @return the searchDealer > >> > */ > >> > public String getSearchDealer() { > >> > return searchDealer; > >> > } > >> > > >> > /** > >> > * @param searchDealer the searchDealer to set > >> > */ > >> > public void setSearchDealer(String searchDealer) { > >> > this.searchDealer = searchDealer; > >> > } > >> > } > >> > > >> > > >> > public class AbcUser implements DomainObject { > >> > > >> > private static final long serialVersionUID = 1L; > >> > public Long getId() { > >> >return null; > >> >} > >> > > >> > //ASM fields > >> >private long userNbr; > >> >private String userName; > >> >private String password; > >> >private String firstName; > >> >private String lastName; > >> > ...setter > >> > getter > >> > > >> > } > >> > > >> > On Wed, Nov 18, 2015 at 11:43 AM, Francois Meillet < > >> > francois.meil...@gmail.com> wrote: > >> > > >> >> and the abcUserSearchTO ? > >> >> > >> >> > >> >> François > >> >> > >> >> > >> >> > >> >> > >> >> > >> >> > >> >> > >> >> > >> >> Le 18 nov. 2015 à 17:40, Mihir Chhaya a > >> écrit : > >> >> > >> >>> 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
Adding line breaks in MessageDialog
How can I add line breaks in the message content of a message dialog? I have tried String message = "Text here: More text " ; Dialog.setEscapeModelStrings(false); Dialog.setModelObject(message); failed to work HTML: java: private void createDialog(){ Dialog = new MessageDialog("dialog", "Information", "Text Here Text", DialogButtons.YES_NO, DialogIcon.WARN) { public void onClose(AjaxRequestTarget target, DialogButton button) { } }; add(Dialog); } -- View this message in context: http://apache-wicket.1842946.n4.nabble.com/Adding-line-breaks-in-MessageDialog-tp4672659.html Sent from the Users forum mailing list archive at Nabble.com. - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
Re: Wicket 7 - OutOfMemory PermGen
Martin, Yes. I am using Wicket 7.00. On Wed, Nov 18, 2015 at 11:55 AM, Mihir Chhaya wrote: > First, Thanks Francois for your quick looking into this. > > The SearchDealerPage is created as below. The link is menu option. > > BookmarkablePageLink dealerInquiryLink = new > BookmarkablePageLink("dealerInquiryLink", SearchDealerPage.class, > searchPageParameters); > > > Thanks, > > -Mihir. > > > On Wed, Nov 18, 2015 at 11:50 AM, Francois Meillet < > francois.meil...@gmail.com> wrote: > >> Sorry, it's seems that there is a problem when you instanciate the >> SearchDealerPage instance >> >> How you instanciate it ? >> >> François >> >> >> >> >> >> >> >> >> Le 18 nov. 2015 à 17:46, Mihir Chhaya a écrit : >> >> > Following are AbcUserSearchTO and AbcUser classes with DomainObject >> > implementation. >> > >> > public interface DomainObject extends Serializable { >> > >> >Long getId(); >> > } >> > >> > public class AbcUserSearchTO implements DomainObject { >> > >> > /** >> > * >> > */ >> > private static final long serialVersionUID = 1L; >> > >> > /* (non-Javadoc) >> > * @see gov.fdle.fpp.domain.DomainObject#getId() >> > */ >> > @Override >> > public Long getId() { >> > return null; >> > } >> > private String searchName; >> > private String searchDealer; >> > >> > /** >> > * @return the lastName >> > */ >> > public String getSearchName() { >> > return searchName; >> > } >> > >> > /** >> > * @param name the lastName to set >> > */ >> > public void setSearchName(String name) { >> >if (name == null){ >> >name = FppConstants.EMPTY_STRING; >> >} >> > this.searchName = name; >> > } >> > >> > /** >> > * @return the searchDealer >> > */ >> > public String getSearchDealer() { >> > return searchDealer; >> > } >> > >> > /** >> > * @param searchDealer the searchDealer to set >> > */ >> > public void setSearchDealer(String searchDealer) { >> > this.searchDealer = searchDealer; >> > } >> > } >> > >> > >> > public class AbcUser implements DomainObject { >> > >> > private static final long serialVersionUID = 1L; >> > public Long getId() { >> >return null; >> >} >> > >> > //ASM fields >> >private long userNbr; >> >private String userName; >> >private String password; >> >private String firstName; >> >private String lastName; >> > ...setter >> > getter >> > >> > } >> > >> > On Wed, Nov 18, 2015 at 11:43 AM, Francois Meillet < >> > francois.meil...@gmail.com> wrote: >> > >> >> and the abcUserSearchTO ? >> >> >> >> >> >> François >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> Le 18 nov. 2015 à 17:40, Mihir Chhaya a >> écrit : >> >> >> >>> 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 searchForm = >> >>> new Form("searchForm", new >> >>
Re: Wicket 7 - OutOfMemory PermGen
First, Thanks Francois for your quick looking into this. The SearchDealerPage is created as below. The link is menu option. BookmarkablePageLink dealerInquiryLink = new BookmarkablePageLink("dealerInquiryLink", SearchDealerPage.class, searchPageParameters); Thanks, -Mihir. On Wed, Nov 18, 2015 at 11:50 AM, Francois Meillet < francois.meil...@gmail.com> wrote: > Sorry, it's seems that there is a problem when you instanciate the > SearchDealerPage instance > > How you instanciate it ? > > François > > > > > > > > > Le 18 nov. 2015 à 17:46, Mihir Chhaya a écrit : > > > Following are AbcUserSearchTO and AbcUser classes with DomainObject > > implementation. > > > > public interface DomainObject extends Serializable { > > > >Long getId(); > > } > > > > public class AbcUserSearchTO implements DomainObject { > > > > /** > > * > > */ > > private static final long serialVersionUID = 1L; > > > > /* (non-Javadoc) > > * @see gov.fdle.fpp.domain.DomainObject#getId() > > */ > > @Override > > public Long getId() { > > return null; > > } > > private String searchName; > > private String searchDealer; > > > > /** > > * @return the lastName > > */ > > public String getSearchName() { > > return searchName; > > } > > > > /** > > * @param name the lastName to set > > */ > > public void setSearchName(String name) { > >if (name == null){ > >name = FppConstants.EMPTY_STRING; > >} > > this.searchName = name; > > } > > > > /** > > * @return the searchDealer > > */ > > public String getSearchDealer() { > > return searchDealer; > > } > > > > /** > > * @param searchDealer the searchDealer to set > > */ > > public void setSearchDealer(String searchDealer) { > > this.searchDealer = searchDealer; > > } > > } > > > > > > public class AbcUser implements DomainObject { > > > > private static final long serialVersionUID = 1L; > > public Long getId() { > >return null; > >} > > > > //ASM fields > >private long userNbr; > >private String userName; > >private String password; > >private String firstName; > >private String lastName; > > ...setter > > getter > > > > } > > > > On Wed, Nov 18, 2015 at 11:43 AM, Francois Meillet < > > francois.meil...@gmail.com> wrote: > > > >> and the abcUserSearchTO ? > >> > >> > >> François > >> > >> > >> > >> > >> > >> > >> > >> > >> Le 18 nov. 2015 à 17:40, Mihir Chhaya a écrit > : > >> > >>> 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 searchForm = > >>> new Form("searchForm", new > >>> CompoundPropertyModel(abcUserSearch)); > >>> searchForm.setOutputMarkupId(true); > >>> searchForm.setMarkupId("searchFormId"); > >>> add(searchForm); > >>> final Label pagetitle = new Label("pageTitle", new > >> Model()); > >>> > >>> if (abcConstants.UPDATE_
Re: Wicket 7 - OutOfMemory PermGen
Hi, Do you use 7.0.0? Because there was a problem - https://issues.apache.org/jira/browse/WICKET-5978 It is fixed in 7.1.0 Martin Grigorov Wicket Training and Consulting https://twitter.com/mtgrigorov On Wed, Nov 18, 2015 at 5:25 PM, Mihir Chhaya wrote: > 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.(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.
Re: Wicket 7 - OutOfMemory PermGen
Sorry, it's seems that there is a problem when you instanciate the SearchDealerPage instance How you instanciate it ? François Le 18 nov. 2015 à 17:46, Mihir Chhaya a écrit : > Following are AbcUserSearchTO and AbcUser classes with DomainObject > implementation. > > public interface DomainObject extends Serializable { > >Long getId(); > } > > public class AbcUserSearchTO implements DomainObject { > > /** > * > */ > private static final long serialVersionUID = 1L; > > /* (non-Javadoc) > * @see gov.fdle.fpp.domain.DomainObject#getId() > */ > @Override > public Long getId() { > return null; > } > private String searchName; > private String searchDealer; > > /** > * @return the lastName > */ > public String getSearchName() { > return searchName; > } > > /** > * @param name the lastName to set > */ > public void setSearchName(String name) { >if (name == null){ >name = FppConstants.EMPTY_STRING; >} > this.searchName = name; > } > > /** > * @return the searchDealer > */ > public String getSearchDealer() { > return searchDealer; > } > > /** > * @param searchDealer the searchDealer to set > */ > public void setSearchDealer(String searchDealer) { > this.searchDealer = searchDealer; > } > } > > > public class AbcUser implements DomainObject { > > private static final long serialVersionUID = 1L; > public Long getId() { >return null; >} > > //ASM fields >private long userNbr; >private String userName; >private String password; >private String firstName; >private String lastName; > ...setter > getter > > } > > On Wed, Nov 18, 2015 at 11:43 AM, Francois Meillet < > francois.meil...@gmail.com> wrote: > >> and the abcUserSearchTO ? >> >> >> François >> >> >> >> >> >> >> >> >> Le 18 nov. 2015 à 17:40, Mihir Chhaya a écrit : >> >>> 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 searchForm = >>> new Form("searchForm", new >>> CompoundPropertyModel(abcUserSearch)); >>> searchForm.setOutputMarkupId(true); >>> searchForm.setMarkupId("searchFormId"); >>> add(searchForm); >>> final Label pagetitle = new Label("pageTitle", new >> Model()); >>> >>> 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 dealerIDFld = new >>> ErroringTextField("searchDealer"); >>> dealerIDFld.setOutputMarkupId(true); >>> dealerIDFld.setMarkupId("searchDealer"); >>> dealerIDFld.setRequired(true); >>> dealerIDFld.add(StringValidator.minimumLength(2)); >>> dealerIDFld.add(new DefaultFocusBehavior()); >>> >>> if
Re: Wicket 7 - OutOfMemory PermGen
Following are AbcUserSearchTO and AbcUser classes with DomainObject implementation. public interface DomainObject extends Serializable { Long getId(); } public class AbcUserSearchTO implements DomainObject { /** * */ private static final long serialVersionUID = 1L; /* (non-Javadoc) * @see gov.fdle.fpp.domain.DomainObject#getId() */ @Override public Long getId() { return null; } private String searchName; private String searchDealer; /** * @return the lastName */ public String getSearchName() { return searchName; } /** * @param name the lastName to set */ public void setSearchName(String name) { if (name == null){ name = FppConstants.EMPTY_STRING; } this.searchName = name; } /** * @return the searchDealer */ public String getSearchDealer() { return searchDealer; } /** * @param searchDealer the searchDealer to set */ public void setSearchDealer(String searchDealer) { this.searchDealer = searchDealer; } } public class AbcUser implements DomainObject { private static final long serialVersionUID = 1L; public Long getId() { return null; } //ASM fields private long userNbr; private String userName; private String password; private String firstName; private String lastName; ...setter getter } On Wed, Nov 18, 2015 at 11:43 AM, Francois Meillet < francois.meil...@gmail.com> wrote: > and the abcUserSearchTO ? > > > François > > > > > > > > > Le 18 nov. 2015 à 17:40, Mihir Chhaya a écrit : > > > 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 searchForm = > >new Form("searchForm", new > > CompoundPropertyModel(abcUserSearch)); > >searchForm.setOutputMarkupId(true); > >searchForm.setMarkupId("searchFormId"); > >add(searchForm); > >final Label pagetitle = new Label("pageTitle", new > Model()); > > > >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 dealerIDFld = new > > ErroringTextField("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; > > > >@Overrid
Re: Wicket 7 - OutOfMemory PermGen
and the abcUserSearchTO ? François Le 18 nov. 2015 à 17:40, Mihir Chhaya a écrit : > 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 searchForm = >new Form("searchForm", new > CompoundPropertyModel(abcUserSearch)); >searchForm.setOutputMarkupId(true); >searchForm.setMarkupId("searchFormId"); >add(searchForm); >final Label pagetitle = new Label("pageTitle", new Model()); > >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 dealerIDFld = new > ErroringTextField("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()); > >
Re: Wicket 7 - OutOfMemory PermGen
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 searchForm = new Form("searchForm", new CompoundPropertyModel(abcUserSearch)); searchForm.setOutputMarkupId(true); searchForm.setMarkupId("searchFormId"); add(searchForm); final Label pagetitle = new Label("pageTitle", new Model()); 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 dealerIDFld = new ErroringTextField("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(callingF
Re: Wicket 7 - OutOfMemory PermGen
Could you show us the SearchDealerPage code François Le 18 nov. 2015 à 17:25, Mihir Chhaya 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.(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(Defau
Wicket 7 - OutOfMemory PermGen
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.(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.PageProvi
Re: PageParameters & mounted pages
Hi Sebastien, The problem is that Request#getQueryParameters() is about - parameters in the query string. And "/mypage/${param}" uses parameter in the path. Both of these are GET parameters but they are different. To get the correct values you should use something like: IRequestHandler handler = application.getRootRequestMapper().map(request); if (handler instance of IPageClassRequestHandler) { // cast and use org.apache.wicket.core.request.handler.IPageClassRequestHandler#getPageParameters } You see this is much more time consuming operation than parsing the query string parameters from a String (the url). Maybe this should be the default, maybe not. I am not sure. You can also make use of org.apache.wicket.request.cycle.PageRequestHandlerTracker#getFirstHandler() to skip the resolution of the IRequestMapper. Martin Grigorov Wicket Training and Consulting https://twitter.com/mtgrigorov On Wed, Nov 18, 2015 at 3:49 PM, Sebastien wrote: > Hi, > > I have a little concerns about PageParameters and mounted pages. > > On a first case - mypage?param=myvalue - I can retrieve param from both > page-parameters and from Request#getQueryParameters() > > On a second case - mypage/myvalue (with a mounted page /mypage/${param}) - > I am able to retrieve param only from page-parameters, but not from the > request cycle (Request#getQueryParameters()) > > Is it intended? > > I saw a previous thread on a similar topic, which suggests to parse > requestCycle.getRequest().getUrl() but it looks a little bit weird to me > and I was wondering if there is no other (built-in) feature... > > My context is the following: I am trying to secure a mounted page like this > (this is currently just a POC...) > > @OACCAuthorizeInstantiation(resource = "${myparam}", permission = "VIEW") > > In OACCAuthorizationStrategy#isInstantiationAuthorized(Class > componentClass), I have access to the component class type, not the > component/page instance so I cannot call #getPageParameters anyhow... > > > Many thanks in advance, > Sebastien >
PageParameters & mounted pages
Hi, I have a little concerns about PageParameters and mounted pages. On a first case - mypage?param=myvalue - I can retrieve param from both page-parameters and from Request#getQueryParameters() On a second case - mypage/myvalue (with a mounted page /mypage/${param}) - I am able to retrieve param only from page-parameters, but not from the request cycle (Request#getQueryParameters()) Is it intended? I saw a previous thread on a similar topic, which suggests to parse requestCycle.getRequest().getUrl() but it looks a little bit weird to me and I was wondering if there is no other (built-in) feature... My context is the following: I am trying to secure a mounted page like this (this is currently just a POC...) @OACCAuthorizeInstantiation(resource = "${myparam}", permission = "VIEW") In OACCAuthorizationStrategy#isInstantiationAuthorized(Class componentClass), I have access to the component class type, not the component/page instance so I cannot call #getPageParameters anyhow... Many thanks in advance, Sebastien
Re: showing a hidden AbstractPageableView
For the time being I have just overridden my DataView getPageCount as override def getPageCount: Long = { val total: Long = getItemCount val itemsPerPage: Long = getItemsPerPage var count: Long = total / itemsPerPage if (itemsPerPage * count < total) { count += 1 } count } On Wed, Nov 18, 2015 at 2:09 PM, Ernesto Reinaldo Barreiro < reier...@gmail.com> wrote: > Hi, > > I have a meta-component that contains a listview that is show or hidden if > there are elements. This was working "before". The criterion I'm using to > show it is getPageCount() > 0 > > @Override > public long getPageCount() > { > long total = getRowCount(); > long itemsPerPage = getItemsPerPage(); > long count = total / itemsPerPage; > > if (itemsPerPage * count < total) > { > count++; > } > > return count; > > } > > but > > /** > * Get the row count. > * > * @see #getItemCount() > * > * @return total item count, but 0 if not visible in the hierarchy > */ > public final long getRowCount() > { > if (!isVisibleInHierarchy()) > { > return 0; > } > > return getItemCount(); > } > > So it returns 0 even if the are element on the list. Are there any changes > on ListView that might have changed this.? I could not spot anything at > > > https://github.com/apache/wicket/commits/master/wicket-core/src/main/java/org/apache/wicket/markup/repeater/AbstractPageableView.java > > Of course I could cast IPageable to AbstractPageableView and call directly > getItemCount() but I wold like to avoid doing that. > > > -- > Regards - Ernesto Reinaldo Barreiro > -- Regards - Ernesto Reinaldo Barreiro
showing a hidden AbstractPageableView
Hi, I have a meta-component that contains a listview that is show or hidden if there are elements. This was working "before". The criterion I'm using to show it is getPageCount() > 0 @Override public long getPageCount() { long total = getRowCount(); long itemsPerPage = getItemsPerPage(); long count = total / itemsPerPage; if (itemsPerPage * count < total) { count++; } return count; } but /** * Get the row count. * * @see #getItemCount() * * @return total item count, but 0 if not visible in the hierarchy */ public final long getRowCount() { if (!isVisibleInHierarchy()) { return 0; } return getItemCount(); } So it returns 0 even if the are element on the list. Are there any changes on ListView that might have changed this.? I could not spot anything at https://github.com/apache/wicket/commits/master/wicket-core/src/main/java/org/apache/wicket/markup/repeater/AbstractPageableView.java Of course I could cast IPageable to AbstractPageableView and call directly getItemCount() but I wold like to avoid doing that. -- Regards - Ernesto Reinaldo Barreiro
Re: are there any changes to radioGroup and AjaxFormChoiceComponentUpdatingBehavior on wickte 7?
Let me see is I find the time to created it (it uses my own bootstrap components) On Wed, Nov 18, 2015 at 1:53 PM, Sven Meier wrote: > Hi, > > with a quickstart it would be easy to spot the problem. > > Regards > Sven > > > On 18.11.2015 13:46, Ernesto Reinaldo Barreiro wrote: > >> Hi, >> >> >> If I "revert" to 6.21.0 problem disappears so this seems to be a 7.1.0 >> "issue". >> >> On Tue, Nov 17, 2015 at 9:36 PM, Ernesto Reinaldo Barreiro < >> reier...@gmail.com> wrote: >> >> Well it is the same in the sense that no client side AJAX event seems to >>> be triggered. >>> >>> On Tue, Nov 17, 2015 at 9:24 PM, Ernesto Reinaldo Barreiro < >>> reier...@gmail.com> wrote: >>> >>> Hi Sven, Thanks for the feedback. It should not be the case radioGroup = new RadioGroup("radioGroup", getModel()); tuneRadioGroup(radioGroup); radioGroup.setRenderBodyOnly(false); radioGroup.setOutputMarkupId(true); add(radioGroup); if(changeHandler != null) { radioGroup.add(new AjaxFormChoiceComponentUpdatingBehavior() { @Override protected void onUpdate(AjaxRequestTarget target) { changeHandler.onSelectionChanged(target, radioGroup.getModel().getObject()); } }); } On Tue, Nov 17, 2015 at 7:11 PM, Sven Meier wrote: Hi, > > nothing specific I can think of ... perhaps WICKET-5476? > > Regards > Sven > > > On 17.11.2015 18:55, Ernesto Reinaldo Barreiro wrote: > > Hi, >> >> I have a bootstrap based component that uses a RadioGroup >> + AjaxFormChoiceComponentUpdatingBehavior. This was working perfectly >> fine >> on wicket 6. Now is no loger working with wicket 7. Are there any >> (obvious) >> changes on the way RadioGroup works that might be preventing it from >> working? >> >> >> - > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > For additional commands, e-mail: users-h...@wicket.apache.org > > > -- Regards - Ernesto Reinaldo Barreiro >>> >>> >>> -- >>> Regards - Ernesto Reinaldo Barreiro >>> >>> >> >> >> > - > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > For additional commands, e-mail: users-h...@wicket.apache.org > > -- Regards - Ernesto Reinaldo Barreiro
Re: are there any changes to radioGroup and AjaxFormChoiceComponentUpdatingBehavior on wickte 7?
Hi, with a quickstart it would be easy to spot the problem. Regards Sven On 18.11.2015 13:46, Ernesto Reinaldo Barreiro wrote: Hi, If I "revert" to 6.21.0 problem disappears so this seems to be a 7.1.0 "issue". On Tue, Nov 17, 2015 at 9:36 PM, Ernesto Reinaldo Barreiro < reier...@gmail.com> wrote: Well it is the same in the sense that no client side AJAX event seems to be triggered. On Tue, Nov 17, 2015 at 9:24 PM, Ernesto Reinaldo Barreiro < reier...@gmail.com> wrote: Hi Sven, Thanks for the feedback. It should not be the case radioGroup = new RadioGroup("radioGroup", getModel()); tuneRadioGroup(radioGroup); radioGroup.setRenderBodyOnly(false); radioGroup.setOutputMarkupId(true); add(radioGroup); if(changeHandler != null) { radioGroup.add(new AjaxFormChoiceComponentUpdatingBehavior() { @Override protected void onUpdate(AjaxRequestTarget target) { changeHandler.onSelectionChanged(target, radioGroup.getModel().getObject()); } }); } On Tue, Nov 17, 2015 at 7:11 PM, Sven Meier wrote: Hi, nothing specific I can think of ... perhaps WICKET-5476? Regards Sven On 17.11.2015 18:55, Ernesto Reinaldo Barreiro wrote: Hi, I have a bootstrap based component that uses a RadioGroup + AjaxFormChoiceComponentUpdatingBehavior. This was working perfectly fine on wicket 6. Now is no loger working with wicket 7. Are there any (obvious) changes on the way RadioGroup works that might be preventing it from working? - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org -- Regards - Ernesto Reinaldo Barreiro -- Regards - Ernesto Reinaldo Barreiro - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
Re: are there any changes to radioGroup and AjaxFormChoiceComponentUpdatingBehavior on wickte 7?
Hi, If I "revert" to 6.21.0 problem disappears so this seems to be a 7.1.0 "issue". On Tue, Nov 17, 2015 at 9:36 PM, Ernesto Reinaldo Barreiro < reier...@gmail.com> wrote: > Well it is the same in the sense that no client side AJAX event seems to > be triggered. > > On Tue, Nov 17, 2015 at 9:24 PM, Ernesto Reinaldo Barreiro < > reier...@gmail.com> wrote: > >> Hi Sven, >> >> Thanks for the feedback. It should not be the case >> >> radioGroup = new RadioGroup("radioGroup", getModel()); >> tuneRadioGroup(radioGroup); >> radioGroup.setRenderBodyOnly(false); >> radioGroup.setOutputMarkupId(true); >> add(radioGroup); >> if(changeHandler != null) { >> radioGroup.add(new AjaxFormChoiceComponentUpdatingBehavior() { >> >> @Override >> protected void onUpdate(AjaxRequestTarget target) { >> changeHandler.onSelectionChanged(target, >> radioGroup.getModel().getObject()); >> } >> }); >> } >> >> >> >> On Tue, Nov 17, 2015 at 7:11 PM, Sven Meier wrote: >> >>> Hi, >>> >>> nothing specific I can think of ... perhaps WICKET-5476? >>> >>> Regards >>> Sven >>> >>> >>> On 17.11.2015 18:55, Ernesto Reinaldo Barreiro wrote: >>> Hi, I have a bootstrap based component that uses a RadioGroup + AjaxFormChoiceComponentUpdatingBehavior. This was working perfectly fine on wicket 6. Now is no loger working with wicket 7. Are there any (obvious) changes on the way RadioGroup works that might be preventing it from working? >>> - >>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org >>> For additional commands, e-mail: users-h...@wicket.apache.org >>> >>> >> >> >> -- >> Regards - Ernesto Reinaldo Barreiro >> > > > > -- > Regards - Ernesto Reinaldo Barreiro > -- Regards - Ernesto Reinaldo Barreiro
Re: Error: Not detached model found
Thanks Sven, it worked ... -- View this message in context: http://apache-wicket.1842946.n4.nabble.com/Error-Not-detached-model-found-tp4672624p4672642.html Sent from the Users forum mailing list archive at Nabble.com. - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
[MEETUP] Wicket 7 & Java 8 migration party 27 november in Deventer (NL)
This is a gentle reminder for this event: At our local meetup in Deventer (http://meetup.com/DEVdev) we wanted to host a Wicket 7 migration party where you can bring your laptop and your source code and join the fun of developing with Wicket 7! And while we're at it, we'll be discussing Java 8 opportunities as well! Some of our Wicket experts will be standing by to help you bring your app to 2015. Attending is free, registration necessary (registration closes on Tuesday 24 November). It is a Dutch meetup, but we do speak some stone coal English, and if you wish the presentation can be done in English(-ish) Register now at http://www.meetup.com/DEVdev/events/226159721/ See you there! - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org