Created
September 25, 2017 12:03
-
-
Save stefanwendelmann/60cd4e4f7bda0d75eee013523b7dbe9c to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <?xml version='1.0' encoding='UTF-8' ?> | |
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | |
| <html xmlns="http://www.w3.org/1999/xhtml" | |
| xmlns:h="http://java.sun.com/jsf/html" | |
| xmlns:f="http://java.sun.com/jsf/core" | |
| xmlns:ui="http://java.sun.com/jsf/facelets" | |
| xmlns:p="http://primefaces.org/ui" | |
| xmlns:c="http://java.sun.com/jsp/jstl/core"> | |
| <ui:composition template="/WEB-INF/templates/templateMainMenu.xhtml"> | |
| <ui:define name="title">Eventlog</ui:define> | |
| <ui:define name="content"> | |
| <p:remoteCommand name="updateTimeline" onstart="saveTimelineZoom()" onsuccess="PF('statusBar').setValue(50);" oncomplete="setTimelineZoom()" update="mainForm:tabs:timeline" onerror="alert(status)" actionListener="#{eventlogWorker.moveToOutput()}" /> | |
| <script type="text/javascript"> | |
| //<![CDATA[ | |
| var range | |
| var updateTimer; | |
| function saveTimelineZoom() { | |
| PF('statusBar').setValue(0); | |
| range = PF('timelineVar').getVisibleRange(); | |
| } | |
| function setTimelineZoom() { | |
| PF('statusBar').setValue(100); | |
| PF('timelineVar').setVisibleRange(range.start, range.end); | |
| } | |
| function tabChange(index) { | |
| if (index === 1) { | |
| updateTimer = setInterval(updateTimeline, 10000); | |
| } else { | |
| clearInterval(updateTimer); | |
| updateTimer = null; | |
| } | |
| } | |
| jQuery(document).ready(function (e) { | |
| }); | |
| //]]> | |
| </script> | |
| <style type="text/css"> | |
| html, body { | |
| height:100%; | |
| padding: 0; | |
| margin: 0; | |
| } | |
| .nichtQuittiert { | |
| background: #de8c71 !important ; | |
| } | |
| .warn { | |
| background: #de8c71 !important ; | |
| } | |
| .text{ | |
| color: white;font-family: 'Ubuntu'; | |
| font-style: normal; | |
| font-weight: 700; | |
| src: local('Ubuntu Bold'), local('Ubuntu-Bold'), url(#{request.contextPath}/assets/fonts/ubuntu700.woff2) format('woff2'); | |
| } | |
| .timeline-event-content{ | |
| color: black; | |
| } | |
| .noack{ | |
| background: #de8c71 !important; | |
| } | |
| .ack{ | |
| background: #95ff95 !important; | |
| } | |
| </style> | |
| <p:messages id="messageOutput" styleClass="warn" autoUpdate="true" closable="true"/> | |
| <p:panel style="background-image: url('/QuoLocoWeb/faces/javax.faces.resource/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png?ln=primefaces-redmond')"> | |
| <table> | |
| <tr> | |
| <td align="left"> | |
| <h1 style="color: white">Eventlog</h1> | |
| <br/> | |
| </td> | |
| </tr> | |
| <tr style="border-style: hidden"> | |
| <td align="left"> | |
| <p:outputLabel id="vonLable" value="Von" styleClass="text"/> | |
| <p:spacer width="10px" height="1px" /> | |
| <p:calendar id="startDate" value="#{eventlogWorker.startDate}" navigator="true" showOn="button" locale="de_DE" pattern="dd.MM.yyyy HH:mm:ss" timeZone="CET" required="true" requiredMessage="Sie müssen ein Anfangsdatum angeben"/> | |
| <p:spacer width="25px" height="1px" /> | |
| <p:outputLabel id="bisLable" value="Bis" styleClass="text"/> | |
| <p:spacer width="10px" height="1px" /> | |
| <p:calendar id="endDate" value="#{eventlogWorker.endDate}" navigator="true" showOn="button" locale="de_DE" pattern="dd.MM.yyyy HH:mm:ss" timeZone="CET" required="true" requiredMessage="Sie müssen ein Enddatum angeben"/> | |
| <p:spacer width="25px" height="1px" /> | |
| <p:commandButton icon="ui-icon-search" actionListener="#{eventlogWorker.search()}" ajax="false" update="data"/> | |
| </td> | |
| </tr> | |
| </table> | |
| </p:panel> | |
| <p:tabView id="tabs" cache="true" widgetVar="tabsVar" onTabChange="tabChange(index)"> | |
| <p:tab id="tableView" title="Tabellarische Ansicht" > | |
| <p:dataTable id="data" widgetVar="DataTable" var="line" resizableColumns="false" draggableColumns="true" value="#{eventlogWorker.lines}" rowStyleClass="#{line.quittiert==false ? 'nichtQuittiert' : null}" rowsPerPageTemplate="10,20,50" rows="10" paginator="true" paginatorPosition="bottom" paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}" > | |
| <f:facet name="header"> | |
| <h:commandLink> | |
| <p:commandButton id="CSV" value="CSV - Download" type="button" style="float: right" icon="ui-icon-arrowthick-1-s"/> | |
| <p:dataExporter type="csv" target="data" fileName="QuoLocoEventlog_#{eventlogWorker.startDate.date}.#{eventlogWorker.startDate.month+1}.#{eventlogWorker.startDate.year+1900}-#{eventlogWorker.endDate.date}.#{eventlogWorker.endDate.month+1}.#{eventlogWorker.endDate.year+1900}" /> | |
| </h:commandLink> | |
| <p:commandButton id="toggler" type="button" value="Spalten" style="float: right" icon="ui-icon-calculator" /> | |
| <p:columnToggler datasource="data" trigger="toggler"> | |
| <p:ajax event="toggle" listener="#{eventlogWorker.onToggled}"/> | |
| </p:columnToggler> | |
| <h1>Eventlog</h1> | |
| </f:facet> | |
| <f:facet name="footer"> | |
| <p:outputLabel id="tipp" value="Tipp: Die Spaltenreihenfolge kann per Drag & Drop geändert werden." styleClass="text"/> | |
| </f:facet> | |
| <p:column id="id" headerText="Id" width="50" filterBy="#{line.id}" filterMatchMode="exact" sortBy="#{line.id}" exportable="#{eventlogWorker.toggled[0]}" styleClass="#{line.error['id']}"> | |
| <f:facet name="filter"> | |
| <p:inputNumber onchange="PF('DataTable').filter()" decimalPlaces="0" thousandSeparator="" inputStyle="width:30px"> | |
| </p:inputNumber> | |
| </f:facet> | |
| <h:outputText value="#{line.id}"/> | |
| </p:column> | |
| <p:column id="datum" headerText="Datum" width="110" sortBy="#{line.lastSend}" exportable="#{eventlogWorker.toggled[1]}" styleClass="#{line.error['datum']}"> | |
| <h:outputText value="#{line.lastSend}"> | |
| <f:convertDateTime locale="de_DE" pattern="dd.MM.yyyy HH:mm:ss" timeZone="CET"/> | |
| </h:outputText> | |
| </p:column> | |
| <p:column id="eventlevel" headerText="Eventlevel" width="90" filterBy="#{line.eventlevel}" filterMatchMode="exact" sortBy="#{line.eventlevel}" exportable="#{eventlogWorker.toggled[2]}" styleClass="#{line.error['eventlevel']}"> | |
| <f:facet name="filter"> | |
| <p:selectOneMenu onchange="PF('DataTable').filter()" > | |
| <f:selectItem itemLabel="" itemValue="#{null}" noSelectionOption="true" /> | |
| <f:selectItems value="#{eventlogWorker.eventlevel}" /> | |
| </p:selectOneMenu> | |
| </f:facet> | |
| <h:outputText value="#{line.eventlevel}"/> | |
| </p:column> | |
| <p:column id="eventart" headerText="Eventart" filterBy="#{line.eventbeschreibung}" filterMatchMode="exact" sortBy="#{line.eventart}" exportable="#{eventlogWorker.toggled[3]}" styleClass="#{line.error['eventart']}"> | |
| <f:facet name="filter"> | |
| <p:selectOneMenu onchange="PF('DataTable').filter()" > | |
| <f:selectItem itemLabel="" itemValue="#{null}" noSelectionOption="true" /> | |
| <f:selectItems value="#{eventlogWorker.events}" /> | |
| </p:selectOneMenu> | |
| </f:facet> | |
| <h:outputText value="#{line.eventart}"/> | |
| </p:column> | |
| <p:column id="personID" headerText="Person" width="130" filterBy="#{line.personVorname} #{line.personNachname}" filterMatchMode="exact" sortBy="#{line.personVorname}" exportable="#{eventlogWorker.toggled[4]}" styleClass="#{line.error['personID']}"> | |
| <f:facet name="filter"> | |
| <p:selectOneMenu onchange="PF('DataTable').filter()" > | |
| <f:selectItem itemLabel="" itemValue="#{null}" noSelectionOption="true" /> | |
| <f:selectItems value="#{eventlogWorker.personen}" /> | |
| </p:selectOneMenu> | |
| </f:facet> | |
| <h:outputText value="#{line.personVorname} #{line.personNachname}"/> | |
| </p:column> | |
| <p:column id="sensor" headerText="Sensor" width="150" filterBy="#{line.sensorEinheit}" filterMatchMode="exact" sortBy="#{line.sensorEinheit}" exportable="#{eventlogWorker.toggled[5]}" styleClass="#{line.error['sensor']}"> | |
| <f:facet name="filter"> | |
| <p:selectOneMenu onchange="PF('DataTable').filter()" > | |
| <f:selectItem itemLabel="" itemValue="#{null}" noSelectionOption="true" /> | |
| <f:selectItems value="#{eventlogWorker.sensoren}" /> | |
| </p:selectOneMenu> | |
| </f:facet> | |
| <h:outputText value="#{line.sensorEinheit}"/> | |
| </p:column> | |
| <p:column id="quittiert" headerText="Quittiert" width="200" filterBy="#{line.quittiert} #{line.userVorname} #{line.userNachname}" filterMatchMode="contains" sortBy="#{line.quittiertDurch}" exportable="#{eventlogWorker.toggled[6]}" styleClass="#{line.error['quittiert']}"> | |
| <f:facet name="filter"> | |
| <p:selectOneMenu onchange="PF('DataTable').filter()" > | |
| <f:selectItem itemLabel="" itemValue="#{null}" noSelectionOption="true" /> | |
| <f:selectItem itemLabel="Alle "Ja"" itemValue="#{line.quittiert!=false}"/> | |
| <f:selectItem itemLabel="Alle "Nein"" itemValue="#{line.quittiert==false}"/> | |
| <f:selectItems value="#{eventlogWorker.quittierer}"/> | |
| </p:selectOneMenu> | |
| </f:facet> | |
| <h:outputText id="Quittiert_durch" rendered="#{line.quittiert == true}" value="Ja#{line.userVorname != null || line.userNachname != null ? ', durch ':''}#{line.userVorname} #{line.userNachname}"/> | |
| <h:outputText id="Quittiert_durch_niemand" rendered="#{line.quittiert == false}" value="Nein"/> | |
| </p:column> | |
| </p:dataTable> | |
| </p:tab> | |
| <p:tab id="graphics" title="Timeline"> | |
| <p:dataTable id="detailsdata" var="line" draggableColumns="true" value="#{eventlogWorker.singleOutputLine}" rowStyleClass="#{line.quittiert==false ? 'nichtQuittiert' : null}"> | |
| <f:facet name="header"> | |
| <h:commandLink> | |
| <p:commandButton id="detailsCSV" value="CSV - Download" type="button" style="float: right" icon="ui-icon-arrowthick-1-s"/> | |
| <p:dataExporter type="csv" target="detailsdata" fileName="QuoLocoEventLog" /> | |
| </h:commandLink> | |
| <p:commandButton id="toggler" type="button" value="Spalten" style="float: right" icon="ui-icon-calculator" /> | |
| <p:columnToggler datasource="detailsdata" trigger="toggler"> | |
| <p:ajax event="toggle" listener="#{eventlogWorker.onToggled2}"/> | |
| </p:columnToggler> | |
| <h1>Timeline</h1> | |
| </f:facet> | |
| <f:facet name="footer"> | |
| <p:outputLabel id="detailstipp" value="Tipp: Die Spaltenreihenfolge kann per Drag & Drop geändert werden." styleClass="text"/> | |
| </f:facet> | |
| <p:column id="detailsid" headerText="Id" width="50" exportable="#{eventlogWorker.toggled2[0]}" styleClass="#{line.error['id']}"> | |
| <h:outputText value="#{line.id}" /> | |
| </p:column> | |
| <p:column id="detailsdatum" headerText="Datum" width="110" exportable="#{eventlogWorker.toggled2[1]}" styleClass="#{line.error['datum']}"> | |
| <h:outputText value="#{line.lastSend}"> | |
| <f:convertDateTime locale="de_DE" pattern="dd.MM.yyyy HH:mm:ss" timeZone="CET"/> | |
| </h:outputText> | |
| </p:column> | |
| <p:column id="detailseventlevel" headerText="Eventlevel" width="90" exportable="#{eventlogWorker.toggled2[2]}" styleClass="#{line.error['eventlevel']}"> | |
| <h:outputText value="#{line.eventlevel}"/> | |
| </p:column> | |
| <p:column id="detailseventID" headerText="Eventart" exportable="#{eventlogWorker.toggled2[3]}" styleClass="#{line.error['eventID']}"> | |
| <h:outputText value="#{line.eventart}"/> | |
| </p:column> | |
| <p:column id="detailspersonID" headerText="Person" width="130" exportable="#{eventlogWorker.toggled2[4]}" styleClass="#{line.error['personID']}"> | |
| <h:outputText value="#{line.personVorname} #{line.personNachname}"/> | |
| </p:column> | |
| <p:column id="detailssensor" headerText="Sensor" width="150" exportable="#{eventlogWorker.toggled2[5]}" styleClass="#{line.error['sensor']}"> | |
| <h:outputText value="#{line.sensorEinheit}"/> | |
| </p:column> | |
| <p:column id="detailsquittiert" headerText="Quittiert" width="200" exportable="#{eventlogWorker.toggled2[6]}" styleClass="#{line.error['quittiert']}"> | |
| <h:outputText id="Quittiert_durch" rendered="#{line.quittiert == true}" value="Ja#{line.userVorname != null || line.userNachname != null ? ', durch ':''}#{line.userVorname} #{line.userNachname}"/> | |
| <h:outputText id="Quittiert_durch_niemand" rendered="#{line.quittiert == false}" value="Nein"/> | |
| </p:column> | |
| </p:dataTable> | |
| <br/> | |
| <p:timeline id="timeline" value="#{eventlogWorker.model}" height="250px" | |
| widgetVar="timelineVar" | |
| min="#{eventlogWorker.startDate}" | |
| max="#{eventlogWorker.endDate}" | |
| selectable="true" | |
| zoomable="true" | |
| moveable="true" | |
| transient="true" | |
| stackEvents="true" | |
| axisOnTop="false" | |
| eventStyle="box" | |
| showCurrentTime="true" | |
| showNavigation="true"> | |
| <p:ajax event="select" listener="#{eventlogWorker.onSelect}" update="detailsdata"/> | |
| </p:timeline> | |
| <p:progressBar id="statusBar" widgetVar="statusBar" styleClass="green" style="width: 150px;height: 6px;margin-top: 15px;"/> | |
| <style type="text/css"> | |
| .green .ui-progressbar-value { | |
| background: #00ff00; | |
| } | |
| </style> | |
| </p:tab> | |
| </p:tabView> | |
| </ui:define> | |
| </ui:composition> | |
| </html> | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| 13:58:44,107 SEVERE [javax.enterprise.resource.webcontainer.jsf.application] (default task-82) Error Rendering View[/Eventlog.xhtml]: javax.faces.FacesException: Cannot add the same component twice: mainForm:tabs:timeline | |
| at com.sun.faces.context.StateContext$DynamicAddRemoveListener.handleAddRemoveWithAutoPrune(StateContext.java:748) | |
| at com.sun.faces.context.StateContext$DynamicAddRemoveListener.handleAdd(StateContext.java:675) | |
| at com.sun.faces.context.StateContext$AddRemoveListener.processEvent(StateContext.java:347) | |
| at com.sun.faces.context.StateContext$DynamicAddRemoveListener.processEvent(StateContext.java:565) | |
| at javax.faces.event.SystemEvent.processListener(SystemEvent.java:108) | |
| at javax.faces.event.ComponentSystemEvent.processListener(ComponentSystemEvent.java:118) | |
| at com.sun.faces.application.ApplicationImpl.processListenersAccountingForAdds(ApplicationImpl.java:2218) | |
| at com.sun.faces.application.ApplicationImpl.invokeViewListenersFor(ApplicationImpl.java:2036) | |
| at com.sun.faces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:290) | |
| at com.sun.faces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:245) | |
| at org.jboss.as.jsf.injection.weld.ForwardingApplication.publishEvent(ForwardingApplication.java:299) | |
| at javax.faces.component.UIComponentBase.publishAfterViewEvents(UIComponentBase.java:2254) | |
| at javax.faces.component.UIComponentBase.doPostAddProcessing(UIComponentBase.java:1935) | |
| at javax.faces.component.UIComponentBase.setParent(UIComponentBase.java:448) | |
| at org.primefaces.component.timeline.Timeline.getClientId(Timeline.java:736) | |
| at org.primefaces.component.timeline.TimelineRenderer.encodeMarkup(TimelineRenderer.java:53) | |
| at org.primefaces.component.timeline.TimelineRenderer.encodeEnd(TimelineRenderer.java:47) | |
| at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:920) | |
| at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863) | |
| at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859) | |
| at org.primefaces.component.tabview.TabViewRenderer.encodeTabContent(TabViewRenderer.java:313) | |
| at org.primefaces.component.tabview.TabViewRenderer.encodeContents(TabViewRenderer.java:271) | |
| at org.primefaces.component.tabview.TabViewRenderer.encodeMarkup(TabViewRenderer.java:132) | |
| at org.primefaces.component.tabview.TabViewRenderer.encodeEnd(TabViewRenderer.java:71) | |
| at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:920) | |
| at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:312) | |
| at com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114) | |
| at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890) | |
| at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:85) | |
| at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:72) | |
| at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:87) | |
| at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:72) | |
| at org.primefaces.component.layout.LayoutUnitRenderer.encodeEnd(LayoutUnitRenderer.java:49) | |
| at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:920) | |
| at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863) | |
| at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859) | |
| at javax.faces.render.Renderer.encodeChildren(Renderer.java:176) | |
| at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890) | |
| at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856) | |
| at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859) | |
| at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859) | |
| at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:458) | |
| at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:134) | |
| at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337) | |
| at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337) | |
| at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337) | |
| at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120) | |
| at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) | |
| at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219) | |
| at javax.faces.webapp.FacesServlet.service(FacesServlet.java:659) | |
| at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85) | |
| at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62) | |
| at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36) | |
| at org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78) | |
| at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) | |
| at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131) | |
| at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57) | |
| at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) | |
| at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46) | |
| at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64) | |
| at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60) | |
| at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77) | |
| at io.undertow.security.handlers.NotificationReceiverHandler.handleRequest(NotificationReceiverHandler.java:50) | |
| at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43) | |
| at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) | |
| at org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61) | |
| at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) | |
| at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) | |
| at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:292) | |
| at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:81) | |
| at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:138) | |
| at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:135) | |
| at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48) | |
| at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43) | |
| at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44) | |
| at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44) | |
| at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44) | |
| at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44) | |
| at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44) | |
| at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44) | |
| at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:272) | |
| at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:81) | |
| at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:104) | |
| at io.undertow.server.Connectors.executeRootHandler(Connectors.java:202) | |
| at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:805) | |
| at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) | |
| at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) | |
| at java.lang.Thread.run(Thread.java:748) | |
| 13:58:44,152 SEVERE [de.itout.web.exceptionhandler.CustomExceptionHandler] (default task-82) CustomException: javax.faces.FacesException: Cannot add the same component twice: mainForm:tabs:timeline | |
| at com.sun.faces.context.StateContext$DynamicAddRemoveListener.handleAddRemoveWithAutoPrune(StateContext.java:748) | |
| at com.sun.faces.context.StateContext$DynamicAddRemoveListener.handleAdd(StateContext.java:675) | |
| at com.sun.faces.context.StateContext$AddRemoveListener.processEvent(StateContext.java:347) | |
| at com.sun.faces.context.StateContext$DynamicAddRemoveListener.processEvent(StateContext.java:565) | |
| at javax.faces.event.SystemEvent.processListener(SystemEvent.java:108) | |
| at javax.faces.event.ComponentSystemEvent.processListener(ComponentSystemEvent.java:118) | |
| at com.sun.faces.application.ApplicationImpl.processListenersAccountingForAdds(ApplicationImpl.java:2218) | |
| at com.sun.faces.application.ApplicationImpl.invokeViewListenersFor(ApplicationImpl.java:2036) | |
| at com.sun.faces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:290) | |
| at com.sun.faces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:245) | |
| at org.jboss.as.jsf.injection.weld.ForwardingApplication.publishEvent(ForwardingApplication.java:299) | |
| at javax.faces.component.UIComponentBase.publishAfterViewEvents(UIComponentBase.java:2254) | |
| at javax.faces.component.UIComponentBase.doPostAddProcessing(UIComponentBase.java:1935) | |
| at javax.faces.component.UIComponentBase.setParent(UIComponentBase.java:448) | |
| at org.primefaces.component.timeline.Timeline.getClientId(Timeline.java:736) | |
| at org.primefaces.component.timeline.TimelineRenderer.encodeMarkup(TimelineRenderer.java:53) | |
| at org.primefaces.component.timeline.TimelineRenderer.encodeEnd(TimelineRenderer.java:47) | |
| at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:920) | |
| at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863) | |
| at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859) | |
| at org.primefaces.component.tabview.TabViewRenderer.encodeTabContent(TabViewRenderer.java:313) | |
| at org.primefaces.component.tabview.TabViewRenderer.encodeContents(TabViewRenderer.java:271) | |
| at org.primefaces.component.tabview.TabViewRenderer.encodeMarkup(TabViewRenderer.java:132) | |
| at org.primefaces.component.tabview.TabViewRenderer.encodeEnd(TabViewRenderer.java:71) | |
| at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:920) | |
| at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:312) | |
| at com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114) | |
| at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890) | |
| at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:85) | |
| at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:72) | |
| at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:87) | |
| at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:72) | |
| at org.primefaces.component.layout.LayoutUnitRenderer.encodeEnd(LayoutUnitRenderer.java:49) | |
| at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:920) | |
| at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863) | |
| at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859) | |
| at javax.faces.render.Renderer.encodeChildren(Renderer.java:176) | |
| at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890) | |
| at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856) | |
| at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859) | |
| at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859) | |
| at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:458) | |
| at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:134) | |
| at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337) | |
| at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337) | |
| at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337) | |
| at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120) | |
| at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) | |
| at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219) | |
| at javax.faces.webapp.FacesServlet.service(FacesServlet.java:659) | |
| at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85) | |
| at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62) | |
| at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36) | |
| at org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78) | |
| at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) | |
| at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131) | |
| at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57) | |
| at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) | |
| at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46) | |
| at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64) | |
| at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60) | |
| at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77) | |
| at io.undertow.security.handlers.NotificationReceiverHandler.handleRequest(NotificationReceiverHandler.java:50) | |
| at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43) | |
| at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) | |
| at org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61) | |
| at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) | |
| at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) | |
| at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:292) | |
| at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:81) | |
| at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:138) | |
| at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:135) | |
| at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48) | |
| at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43) | |
| at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44) | |
| at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44) | |
| at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44) | |
| at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44) | |
| at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44) | |
| at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44) | |
| at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:272) | |
| at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:81) | |
| at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:104) | |
| at io.undertow.server.Connectors.executeRootHandler(Connectors.java:202) | |
| at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:805) | |
| at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) | |
| at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) | |
| at java.lang.Thread.run(Thread.java:748) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment