Re: data persistence using hibernate

2023-01-23 Thread Martin Grigorov
On Tue, Jan 24, 2023 at 8:50 AM James Pollard 
wrote:

> I've managed to make some progress with database connectivity, ended up
> using hikaricp instead
>

HikariCP is a just a connection pool.
I am not sure what exactly you mean with "instead". A connection pool is
not a replacement of an ORM framework like Hibernate.



>
> However, I can't workout where the most appropriate place to put the
> connection pool close call, is there a close or shutdown function
> I can override so that the connection pool can be closed cleanly. I
> haven't had any luck in my search so far
>
> Additionally, I keep running into the following error:
>  java.lang.IllegalStateException: Illegal access: this web
> application instance has been stopped already.
> Could not load [META-INF/services/org.mariadb.jdbc.plugin.Codec].
> The following stack trace is thrown for debugging purposes as well as to
> attempt to terminate the thread which caused the illegal access.
>
> I'm assuming this is a error more to do hikaricp so I'll enquire among
> their community about it, but if someone has encountered this before feel
> to volunteer any suggestions or recommended actions. The odd thing is I
> still seem to be able to send queries to the database from what I can
> tell
>

MyWicketApplication#onDestroy()
https://github.com/apache/wicket/blob/4affb7b18424e40663239ac9c93d9ec33a432541/wicket-core/src/main/java/org/apache/wicket/Application.java#L569



>
> Best Regards
> James Pollard
> james.poll...@iinet.net.au
>
> On 27/12/22 8:23 am, Vit Rozkovec wrote:
> >
> >>
> >> But I'm not sure where to put the following parts
> >> Session sess = sessionFactory.openSession();
> >> ManagedSessionContext.bind(sess);
> >
> > This is done in some utility method when you retrieve the session for
> > the first time in the request.
> >
> > You should also check if the session is already bound by calling
> >
> > ManagedSessionContext.hasBind(SessionFactory factory)
> >
> > and binding it only once per request.
> >
> >
> >>
> >> unbindSessionFactory
> >
> > I have this in my custom implementation of
> > IRequestCycleListener.onEndRequest(RequestCycle cycle)
> >
> > that you add in Application.init() method
> >
> > getRequestCycleListeners().add(new DataRequestCycleListener());
> >
> > To be honest, I've until now stayed away from Spring as it still seems
> > to me as a too much of a black box that I didn't find a time to invest
> > in learning it, so I may not be the right person to give you advice,
> > because my solution may not be the best one either, although it seems
> > to be as javadoc of the ManagedSessionContext suggests. The solution I
> > now use took heavy inspiration in old old, now nonexistent, Databinder
> > that came around the time Wicket 1.2 or so and when I was tasked to
> > select new java framework after landing my first job and found Wicket.
> > Old times :D.
> >
> > Vit
> >
> >
> >>
> >>
> >> Thank you for the help so far both of you, I've probably made
> >> mistakes with implement parts
> >> of the previously outlined process.
> >> I've come from experimenting with javafx so wicket has been a radical
> >> change of direction for me
> >> so far. But since there is very little in the way of examples for
> >> database integration I'm struggling
> >> to get my head around how to implement it correctly, as well as
> >> knowing for sure whether I've
> >> done it correctly
> >>
> >> Best Regards
> >> James Pollard
> >> james.poll...@iinet.net.au
> >>
> >> On 23/12/22 10:16 am, Ernesto Reinaldo Barreiro wrote:
> >>> Hi James,
> >>>
> >>> On Thu, Dec 22, 2022 at 2:24 PM James 
> >>> wrote:
> >>>
>  Thanks for the guidance so far, that pointed me to find additional
>  resources on JPA
>  I believe I have this configured correctly, but I'm confused about how
>  to integrate JPA/Hibernate into a
>  pure wicket authenticated web application project since the
>  resource you
>  directed me to previously
>  seems to be more heavily on the spring side of things.
> 
> >>> This is true. I have used Hibernate/JPA without the SpringBoot
> >>> parts... But
> >>> those projects are private: some owned by me, others no.
> >>>
> >>>
>  Thank you for accommodating all my questions and misunderstandings so
>  far, I tend to use a reverse
>  engineer learning style so it's helped me immensely.
> 
>  Glad to be of some help. This is why this place is for.
> >>>
>  I've included screenshots of the project file list and the application
>  class in the hopes that it makes
> 
> >>> They didn't
> >>>
> >>>
>  understanding what I'm trying to convey easier
> 
>  Best Regards
>  James Pollard
>  james.poll...@iinet.net.au
> 
>  On 20/12/22 12:58 pm, Ernesto Reinaldo Barreiro wrote:
> 
> https://github.com/MarcGiffing/wicket-spring-boot/blob/master/wicket-spring-boot-starter-example/src/main/java/com/giffing/wicket/spring/boot/example/model/Customer.java

Re: data persistence using hibernate

2023-01-23 Thread James Pollard
I've managed to make some progress with database connectivity, ended up 
using hikaricp instead


However, I can't workout where the most appropriate place to put the 
connection pool close call, is there a close or shutdown function
I can override so that the connection pool can be closed cleanly. I 
haven't had any luck in my search so far


Additionally, I keep running into the following error:
    java.lang.IllegalStateException: Illegal access: this web 
application instance has been stopped already.
   Could not load [META-INF/services/org.mariadb.jdbc.plugin.Codec]. 
The following stack trace is thrown for debugging purposes as well as to

   attempt to terminate the thread which caused the illegal access.

I'm assuming this is a error more to do hikaricp so I'll enquire among 
their community about it, but if someone has encountered this before feel
to volunteer any suggestions or recommended actions. The odd thing is I 
still seem to be able to send queries to the database from what I can

tell

Best Regards
James Pollard
james.poll...@iinet.net.au

On 27/12/22 8:23 am, Vit Rozkovec wrote:




But I'm not sure where to put the following parts
Session sess = sessionFactory.openSession();
ManagedSessionContext.bind(sess);


This is done in some utility method when you retrieve the session for 
the first time in the request.


You should also check if the session is already bound by calling

ManagedSessionContext.hasBind(SessionFactory factory)

and binding it only once per request.




unbindSessionFactory


I have this in my custom implementation of 
IRequestCycleListener.onEndRequest(RequestCycle cycle)


that you add in Application.init() method

getRequestCycleListeners().add(new DataRequestCycleListener());

To be honest, I've until now stayed away from Spring as it still seems 
to me as a too much of a black box that I didn't find a time to invest 
in learning it, so I may not be the right person to give you advice, 
because my solution may not be the best one either, although it seems 
to be as javadoc of the ManagedSessionContext suggests. The solution I 
now use took heavy inspiration in old old, now nonexistent, Databinder 
that came around the time Wicket 1.2 or so and when I was tasked to 
select new java framework after landing my first job and found Wicket. 
Old times :D.


Vit





Thank you for the help so far both of you, I've probably made 
mistakes with implement parts

of the previously outlined process.
I've come from experimenting with javafx so wicket has been a radical 
change of direction for me
so far. But since there is very little in the way of examples for 
database integration I'm struggling
to get my head around how to implement it correctly, as well as 
knowing for sure whether I've

done it correctly

Best Regards
James Pollard
james.poll...@iinet.net.au

On 23/12/22 10:16 am, Ernesto Reinaldo Barreiro wrote:

Hi James,

On Thu, Dec 22, 2022 at 2:24 PM James  
wrote:



Thanks for the guidance so far, that pointed me to find additional
resources on JPA
I believe I have this configured correctly, but I'm confused about how
to integrate JPA/Hibernate into a
pure wicket authenticated web application project since the 
resource you

directed me to previously
seems to be more heavily on the spring side of things.

This is true. I have used Hibernate/JPA without the SpringBoot 
parts... But

those projects are private: some owned by me, others no.



Thank you for accommodating all my questions and misunderstandings so
far, I tend to use a reverse
engineer learning style so it's helped me immensely.

Glad to be of some help. This is why this place is for.



I've included screenshots of the project file list and the application
class in the hopes that it makes


They didn't



understanding what I'm trying to convey easier

Best Regards
James Pollard
james.poll...@iinet.net.au

On 20/12/22 12:58 pm, Ernesto Reinaldo Barreiro wrote:
https://github.com/MarcGiffing/wicket-spring-boot/blob/master/wicket-spring-boot-starter-example/src/main/java/com/giffing/wicket/spring/boot/example/model/Customer.java 


This defines a JPA entity and this JPA/Hibernate


https://github.com/MarcGiffing/wicket-spring-boot/blob/master/wicket-spring-boot-starter-example/src/main/resources/application.yml 


Project uses Spring magic I guess and will start a Hibernate with H2.
Wicket is also started via SpringBoot.


On Tue, Dec 20, 2022 at 7:44 AM James 

wrote:
I've had a look through it but couldn't find any reference to 
hibernate

so far, its entirely
possible that I managed to miss it while I was searching though

Best Regards
James Pollard
james.poll...@iinet.net.au

On 19/12/22 5:06 pm, Ernesto Reinaldo Barreiro wrote:

Hi,

This project

https://github.com/MarcGiffing/wicket-spring-boot

contains a sample project that integrates with JPA/hibernate.


On Mon, Dec 19, 2022 at 9:12 AM James 

wrote:

Hi,
can anyone direct me to any resources on how to integrate 
hibernate

for

data pers

Re: FormComponent and FormComponentPanel ClassCast Issue

2023-01-23 Thread Eric Hamel
If it helps here is the full ClassificationPanel class:

-
class ClassificationsPanel extends 
FormComponentPanel {

private static final long serialVersionUID = 1L;

private static final String TOGGLE_CLASS = "list-group-item-warning";

public ClassificationsPanel(String id, IModel model, 
BootstrapFormform) {

// super(id, model, Model.of("Classifications"), PanelType.Info);

super(id, model);

final CheckGroup documentCategoryCodes = new 
CheckGroup("documentCategoryCodes", new 
PropertyModel>(getModel(), "documentCategories"));

add(documentCategoryCodes);

ListView documentCategoryCode = new 
ListView("documentCategoryCode", 
IRISAuthenticatedWebSession.get().getDocumentCategoryforProcessingArea(getModelObject().getProcessingArea()))
 {

private static final long serialVersionUID = 1L;

@Override

protected void populateItem(ListItem item) {

item.setOutputMarkupId(true);

Check check = new Check("check", 
item.getModel());

check.setMarkupId("check" + item.getMarkupId());

check.setOutputMarkupId(true);

check.setLabel(Model.of(item.getModelObject().getDocumentCategoryDescription()));

item.add(check);

item.add(new Label("label", 
item.getModelObject().getDocumentCategoryDescription()));

if(documentCategoryCodes.getModelObject().contains(item.getModelObject())){

item.add(new CssClassNameAppender(TOGGLE_CLASS));

}

}

};

// documentCategoryCode.setReuseItems(true);

documentCategoryCodes.add(documentCategoryCode);

}

@Override

protected void convertInput() {

setConvertedInput(getModelObject());

}

@Override

public void renderHead(IHeaderResponse response) {

super.renderHead(response);

String javascript ="$(function(){$(\"input[type=checkbox]\").on(\"change\", 
function() {var $chk = $(this),num = $chk.attr(\"id\").substring(7),$row = 
$(\"#id\" + num);$row.toggleClass(\"" + TOGGLE_CLASS+ "\");});});";

response.render(OnDomReadyHeaderItem.forScript(javascript));

}

}


> On Jan 23, 2023, at 10:31 AM, Eric Hamel  wrote:
> 
> The hierarchy is DocumentSearchPanel extends BootstrapGenericPanel -> 
> BodyPanel extends GenericPanel -> BootstrapForm -> FormGroup -> 
> ClassificationPanel.
> 
> 
> ClassificationPanel is an anonymous class of DocumentSearchPanel.
> 
>> On Jan 23, 2023, at 10:19 AM, Martin Grigorov  wrote:
>> 
>> Hi,
>> 
>> On Mon, Jan 23, 2023 at 5:09 PM Eric Hamel  wrote:
>> 
>>> Good morning,
>>> 
>>> We are running into intermittent issues on our WebSphere 8.5 environment.
>>> The server keeps crashing and we see no cause in our logs. With that said,
>>> admins have seen the following error in our logs and I can’t make sense out
>>> of it.
>>> 
>>> 07:48:51.632 ERROR [CVIENS | 10.79.49.41 | 5uRaDK6Hu4gj0ABIXyNTo76]
>>> o.a.wicket.DefaultExceptionMapper [DefaultExceptionMapper.java:170] -
>>> Unexpected error occurred
>>> java.lang.ClassCastException:
>>> gov.osc.ouf.web.components.document.search.DocumentSearchPanel$ClassificationsPanel$1
>>> incompatible with org.apache.wicket.markup.html.form.FormComponent
>>>  at
>>> de.agilecoders.wicket.core.markup.html.bootstrap.form.FormGroup.findFormComponents(FormGroup.java:255)
>>> ~[wicket-bootstrap-core-0.9.22.jar:0.9.22]
>>>  at
>>> de.agilecoders.wicket.core.markup.html.bootstrap.form.FormGroup.onInitialize(FormGroup.java:175)
>>> ~[wicket-bootstrap-core-0.9.22.jar:0.9.22]
>>>  at
>>> org.apache.wicket.Component.fireInitialize(Component.java:877)
>>> ~[wicket-core-6.24.0.jar:6.24.0]
>>>  at
>>> org.apache.wicket.MarkupContainer$3.component(MarkupContainer.java:967)
>>> ~[wicket-core-6.24.0.jar:6.24.0]
>>>  at
>>> org.apache.wicket.MarkupContainer$3.component(MarkupContainer.java:963)
>>> ~[wicket-core-6.24.0.jar:6.24.0]
>>>  at
>>> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:144)
>>> ~[wicket-util-6.24.0.jar:6.24.0]
>>>  at
>>> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:162)
>>> ~[wicket-util-6.24.0.jar:6.24.0]
>>>  at
>>> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:162)
>>> ~[wicket-util-6.24.0.jar:6.24.0]
>>>  at
>>> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:162)
>>> ~[wicket-util-6.24.0.jar:6.24.0]
>>>  at
>>> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:123)
>>> ~[wicket-util-6.24.0.jar:6.24.0]
>>>  at
>>> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:192)
>>> ~[wicket-util-6.24.0.jar:6.24.0]
>>>  at
>>> org.apache.wicket.MarkupContainer.visitChildren(MarkupContainer.java:875)
>>> ~[wicket-core-6.24.0.jar:6.24.0]
>>>  at
>>> org.apache.wicket.MarkupContainer.internalInitialize(MarkupContainer.java:962)
>>> ~[wicket-core-6.24.0.jar:6.24.0]
>>>  at org.apache.wicket.Page.isPageStateless(Page.java:463)
>>> ~[wicket-core-6.24.0.jar:6.24.0]
>>>  at
>>> org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper.getPageInfo(AbstractB

Re: FormComponent and FormComponentPanel ClassCast Issue

2023-01-23 Thread Eric Hamel
The hierarchy is DocumentSearchPanel extends BootstrapGenericPanel -> BodyPanel 
extends GenericPanel -> BootstrapForm -> FormGroup -> ClassificationPanel.


ClassificationPanel is an anonymous class of DocumentSearchPanel.

> On Jan 23, 2023, at 10:19 AM, Martin Grigorov  wrote:
> 
> Hi,
> 
> On Mon, Jan 23, 2023 at 5:09 PM Eric Hamel  wrote:
> 
>> Good morning,
>> 
>> We are running into intermittent issues on our WebSphere 8.5 environment.
>> The server keeps crashing and we see no cause in our logs. With that said,
>> admins have seen the following error in our logs and I can’t make sense out
>> of it.
>> 
>> 07:48:51.632 ERROR [CVIENS | 10.79.49.41 | 5uRaDK6Hu4gj0ABIXyNTo76]
>> o.a.wicket.DefaultExceptionMapper [DefaultExceptionMapper.java:170] -
>> Unexpected error occurred
>> java.lang.ClassCastException:
>> gov.osc.ouf.web.components.document.search.DocumentSearchPanel$ClassificationsPanel$1
>> incompatible with org.apache.wicket.markup.html.form.FormComponent
>>   at
>> de.agilecoders.wicket.core.markup.html.bootstrap.form.FormGroup.findFormComponents(FormGroup.java:255)
>> ~[wicket-bootstrap-core-0.9.22.jar:0.9.22]
>>   at
>> de.agilecoders.wicket.core.markup.html.bootstrap.form.FormGroup.onInitialize(FormGroup.java:175)
>> ~[wicket-bootstrap-core-0.9.22.jar:0.9.22]
>>   at
>> org.apache.wicket.Component.fireInitialize(Component.java:877)
>> ~[wicket-core-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.MarkupContainer$3.component(MarkupContainer.java:967)
>> ~[wicket-core-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.MarkupContainer$3.component(MarkupContainer.java:963)
>> ~[wicket-core-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:144)
>> ~[wicket-util-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:162)
>> ~[wicket-util-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:162)
>> ~[wicket-util-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:162)
>> ~[wicket-util-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:123)
>> ~[wicket-util-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:192)
>> ~[wicket-util-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.MarkupContainer.visitChildren(MarkupContainer.java:875)
>> ~[wicket-core-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.MarkupContainer.internalInitialize(MarkupContainer.java:962)
>> ~[wicket-core-6.24.0.jar:6.24.0]
>>   at org.apache.wicket.Page.isPageStateless(Page.java:463)
>> ~[wicket-core-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper.getPageInfo(AbstractBookmarkableMapper.java:465)
>> ~[wicket-core-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper.mapHandler(AbstractBookmarkableMapper.java:409)
>> ~[wicket-core-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.core.request.mapper.MountedMapper.mapHandler(MountedMapper.java:395)
>> ~[wicket-core-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.request.mapper.CompoundRequestMapper.mapHandler(CompoundRequestMapper.java:215)
>> ~[wicket-request-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.request.cycle.RequestCycle.mapUrlFor(RequestCycle.java:429)
>> [wicket-core-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:281)
>> ~[wicket-core-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175)
>> ~[wicket-core-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:890)
>> ~[wicket-core-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
>> ~[wicket-request-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261)
>> [wicket-core-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)
>> [wicket-core-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
>> [wicket-core-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
>> [wicket-core-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
>> [wicket-core-6.24.0.jar:6.24.0]
>>   at
>> org.apache.wicket.proto

Re: FormComponent and FormComponentPanel ClassCast Issue

2023-01-23 Thread Martin Grigorov
Hi,

On Mon, Jan 23, 2023 at 5:09 PM Eric Hamel  wrote:

> Good morning,
>
> We are running into intermittent issues on our WebSphere 8.5 environment.
> The server keeps crashing and we see no cause in our logs. With that said,
> admins have seen the following error in our logs and I can’t make sense out
> of it.
>
> 07:48:51.632 ERROR [CVIENS | 10.79.49.41 | 5uRaDK6Hu4gj0ABIXyNTo76]
> o.a.wicket.DefaultExceptionMapper [DefaultExceptionMapper.java:170] -
> Unexpected error occurred
> java.lang.ClassCastException:
> gov.osc.ouf.web.components.document.search.DocumentSearchPanel$ClassificationsPanel$1
> incompatible with org.apache.wicket.markup.html.form.FormComponent
>at
> de.agilecoders.wicket.core.markup.html.bootstrap.form.FormGroup.findFormComponents(FormGroup.java:255)
> ~[wicket-bootstrap-core-0.9.22.jar:0.9.22]
>at
> de.agilecoders.wicket.core.markup.html.bootstrap.form.FormGroup.onInitialize(FormGroup.java:175)
> ~[wicket-bootstrap-core-0.9.22.jar:0.9.22]
>at
> org.apache.wicket.Component.fireInitialize(Component.java:877)
> ~[wicket-core-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.MarkupContainer$3.component(MarkupContainer.java:967)
> ~[wicket-core-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.MarkupContainer$3.component(MarkupContainer.java:963)
> ~[wicket-core-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:144)
> ~[wicket-util-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:162)
> ~[wicket-util-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:162)
> ~[wicket-util-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:162)
> ~[wicket-util-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:123)
> ~[wicket-util-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:192)
> ~[wicket-util-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.MarkupContainer.visitChildren(MarkupContainer.java:875)
> ~[wicket-core-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.MarkupContainer.internalInitialize(MarkupContainer.java:962)
> ~[wicket-core-6.24.0.jar:6.24.0]
>at org.apache.wicket.Page.isPageStateless(Page.java:463)
> ~[wicket-core-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper.getPageInfo(AbstractBookmarkableMapper.java:465)
> ~[wicket-core-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper.mapHandler(AbstractBookmarkableMapper.java:409)
> ~[wicket-core-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.core.request.mapper.MountedMapper.mapHandler(MountedMapper.java:395)
> ~[wicket-core-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.request.mapper.CompoundRequestMapper.mapHandler(CompoundRequestMapper.java:215)
> ~[wicket-request-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.request.cycle.RequestCycle.mapUrlFor(RequestCycle.java:429)
> [wicket-core-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:281)
> ~[wicket-core-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175)
> ~[wicket-core-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:890)
> ~[wicket-core-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
> ~[wicket-request-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261)
> [wicket-core-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)
> [wicket-core-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
> [wicket-core-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
> [wicket-core-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
> [wicket-core-6.24.0.jar:6.24.0]
>at
> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
> [wicket-core-6.24.0.jar:6.24.0]
>at
> com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
> [com.ibm.ws.webcontainer.jar:na]
>at
> com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
> [com.ibm.ws.web

FormComponent and FormComponentPanel ClassCast Issue

2023-01-23 Thread Eric Hamel
Good morning,

We are running into intermittent issues on our WebSphere 8.5 environment. The 
server keeps crashing and we see no cause in our logs. With that said, admins 
have seen the following error in our logs and I can’t make sense out of it.

07:48:51.632 ERROR [CVIENS | 10.79.49.41 | 5uRaDK6Hu4gj0ABIXyNTo76] 
o.a.wicket.DefaultExceptionMapper [DefaultExceptionMapper.java:170] - 
Unexpected error occurred
java.lang.ClassCastException: 
gov.osc.ouf.web.components.document.search.DocumentSearchPanel$ClassificationsPanel$1
 incompatible with org.apache.wicket.markup.html.form.FormComponent
   at 
de.agilecoders.wicket.core.markup.html.bootstrap.form.FormGroup.findFormComponents(FormGroup.java:255)
 ~[wicket-bootstrap-core-0.9.22.jar:0.9.22]
   at 
de.agilecoders.wicket.core.markup.html.bootstrap.form.FormGroup.onInitialize(FormGroup.java:175)
 ~[wicket-bootstrap-core-0.9.22.jar:0.9.22]
   at 
org.apache.wicket.Component.fireInitialize(Component.java:877) 
~[wicket-core-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.MarkupContainer$3.component(MarkupContainer.java:967) 
~[wicket-core-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.MarkupContainer$3.component(MarkupContainer.java:963) 
~[wicket-core-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:144) 
~[wicket-util-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:162) 
~[wicket-util-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:162) 
~[wicket-util-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:162) 
~[wicket-util-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:123) 
~[wicket-util-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:192) 
~[wicket-util-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.MarkupContainer.visitChildren(MarkupContainer.java:875) 
~[wicket-core-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.MarkupContainer.internalInitialize(MarkupContainer.java:962) 
~[wicket-core-6.24.0.jar:6.24.0]
   at org.apache.wicket.Page.isPageStateless(Page.java:463) 
~[wicket-core-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper.getPageInfo(AbstractBookmarkableMapper.java:465)
 ~[wicket-core-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper.mapHandler(AbstractBookmarkableMapper.java:409)
 ~[wicket-core-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.core.request.mapper.MountedMapper.mapHandler(MountedMapper.java:395)
 ~[wicket-core-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.request.mapper.CompoundRequestMapper.mapHandler(CompoundRequestMapper.java:215)
 ~[wicket-request-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.request.cycle.RequestCycle.mapUrlFor(RequestCycle.java:429) 
[wicket-core-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:281)
 ~[wicket-core-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175)
 ~[wicket-core-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:890)
 ~[wicket-core-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
 ~[wicket-request-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261) 
[wicket-core-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)
 [wicket-core-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
 [wicket-core-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
 [wicket-core-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
 [wicket-core-6.24.0.jar:6.24.0]
   at 
org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282) 
[wicket-core-6.24.0.jar:6.24.0]
   at 
com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
 [com.ibm.ws.webcontainer.jar:na]
   at 
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
 [com.ibm.ws.webcontainer.jar:na]
   at 
com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:967)
 [com.ibm.ws.webcontainer.jar:na]
   at 
com.ibm.ws.webcont