Keyboard Shortcuts
Likes
Search
Locked PanelPro v. 4.12 Save & Re-Open error
In JMRI PanelPro v. 4.12, control panels do not save and open properly. Standard turnout symbols display with broken lines. More important, throttles do not reopen after being saved. The following error message occurs, <Attribute "border" must be declared for element type "ThrottleFrame".> ? This is a first-time install for me, using the latest build. Would a previous edition of JMRI avoid the problems; are they bugs in the new build, or is something wrong with my setup? Any help would be appreciated. ? The PC is Windows 10, 64-bit, with Java 1.8.0_181; I am a new user and the problem has occurred from the beginning of the installation; the USB interface uses an NCE ProCab. |
When you get the panel load error, go to "Help >> System Console". Click on the "Copy to clipboard" button and paste into a reply.
toggle quoted message
Show quoted text
The turnout symbols vary depending on the panel type. Are you using Layout Editor, Panel Editor or Control Panel Editor? It would be helpful if you could upload a screenshot to the Photos area. Dave Sand On Aug 10, 2018, at 9:37 AM, parsley26@... wrote: |
The System Console is pasted in this message. A screen shot of the control panel is posted under "PanelPro v. 4.12 Save & Re-Open error". ? The turnout icons don't display properly at startup. When they are used, then the "?" changes to the regular icon. ? Thanks very much, ? Patrick Warden ? -------------------------- ? 2018-08-10 12:19:02,051 util.Log4JUtil??????????????????????? INFO? - * JMRI log ** [main] 2018-08-10 12:19:02,060 util.Log4JUtil??????????????????????? INFO? - This log is appended to file: C:\Users\parsl\JMRI\log\messages.log [main] 2018-08-10 12:19:02,060 util.Log4JUtil??????????????????????? INFO? - This log is stored in file: C:\Users\parsl\JMRI\log\session.log [main] 2018-08-10 12:19:02,060 apps.Apps???????????????????????????? INFO? - PanelPro version 4.12+Rb6a9bb1 starts under Java 1.8.0_181 on Windows 10 x86 v10.0 at Fri Aug 10 12:19:02 PDT 2018 [main] 2018-08-10 12:19:02,225 apps.Apps???????????????????????????? INFO? - Starting with profile My_JMRI_Railroad.3e1efa1d [main] 2018-08-10 12:19:02,372 node.NodeIdentity???????????????????? INFO? - Using jmri-gPUwrcobbhNiaatmWPkXzA-3e1efa1d as the JMRI Node identity [AWT-EventQueue-0] 2018-08-10 12:19:02,472 xml.AbstractSerialConnectionConfigXml INFO? - Starting to connect for "NCE" [main] 2018-08-10 12:19:02,720 usbdriver.UsbDriverAdapter????? ??????INFO? - NCE USB COM4 port opened at 19200 baud [main] 2018-08-10 12:19:02,851 nce.NceConnectionStatus?????????????? INFO? - NCE EPROM revision = 7.3.7 [AWT-EventQueue-0] 2018-08-10 12:19:02,925 apps.PerformFileModel???????????????? INFO? - Loading file C:\Users\parsl\Documents\My JMRI\Panel 072318.xml [main] 2018-08-10 12:19:04,612 util.FileUtilSupport????????????????? INFO? - File path program: is C:\Program Files (x86)\JMRI\ [main] 2018-08-10 12:19:04,612 util.FileUtilSupport????????????????? INFO? - File path preference: is C:\Users\parsl\JMRI\My_JMRI_Railroad\ [main] 2018-08-10 12:19:04,612 util.FileUtilSupport????????????????? INFO? - File path profile: is C:\Users\parsl\JMRI\My_JMRI_Railroad\ [main] 2018-08-10 12:19:04,612 util.FileUtilSupport?? ???????????????INFO? - File path settings: is C:\Users\parsl\JMRI\ [main] 2018-08-10 12:19:04,612 util.FileUtilSupport????????????????? INFO? - File path home: is C:\Users\parsl\ [main] 2018-08-10 12:19:04,612 util.FileUtilSupport????????????????? INFO? - File path scripts: is C:\Users\parsl\JMRI\My_JMRI_Railroad\ [main] 2018-08-10 12:19:09,614 PanelPro.PanelPro???????????????????? INFO? - Main initialization done [main] 2018-08-10 12:19:25,862 configurexml.ErrorHandler???????????? ERROR - Parse error while parsing file /C:/Users/parsl/Documents/My%20JMRI/Throttle%20072318.xml Exception: org.jdom2.input.JDOMParseException: Error on line 4: Attribute "border" must be declared for element type "ThrottleFrame". See for possibly more information. [AWT-EventQueue-0] org.jdom2.input.JDOMParseException: Error on line 4: Attribute "border" must be declared for element type "ThrottleFrame". ????????????? at org.jdom2.input.sax.SAXBuilderEngine.build(SAXBuilderEngine.java:232) ????????????? at org.jdom2.input.sax.SAXBuilderEngine.build(SAXBuilderEngine.java:253) ????????????? at org.jdom2.input.SAXBuilder.build(SAXBuilder.java:1091) ????????????? at jmri.jmrit.XmlFile.getRoot(XmlFile.java:197) ????????????? at jmri.jmrit.XmlFile.rootFromURL(XmlFile.java:182) ????????????? at jmri.configurexml.ConfigXmlManager.loadOnSwingThread(ConfigXmlManager.java:646) ????????????? at jmri.configurexml.ConfigXmlManager.lambda$1(ConfigXmlManager.java:604) ????????????? at jmri.util.ThreadingUtil.runOnGUIwithReturn(ThreadingUtil.java:152) ????????????? at jmri.configurexml.ConfigXmlManager.load(ConfigXmlManager.java:602) ????????????? at jmri.implementation.JmriConfigurationManager.load(JmriConfigurationManager.java:231) ????????????? at jmri.implementation.JmriConfigurationManager.load(JmriConfigurationManager.java:170) ????????????? at jmri.implementation.JmriConfigurationManager.load(JmriConfigurationManager.java:160) ????????????? at jmri.configurexml.LoadXmlConfigAction.loadFile(LoadXmlConfigAction.java:52) ????????????? at jmri.configurexml.LoadXmlUserAction.actionPerformed(LoadXmlUserAction.java:44) ????????????? at javax.swing.AbstractButton.fireActionPerformed(Unknown Source) ????????????? at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source) ????????????? at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source) ????????????? at javax.swing.DefaultButtonModel.setPressed(Unknown Source) ????????????? at javax.swing.AbstractButton.doClick(Unknown Source) ????????????? at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source) ????????????? at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source) ????????????? at java.awt.Component.processMouseEvent(Unknown Source) ????????????? at javax.swing.JComponent.processMouseEvent(Unknown Source) ????????????? at java.awt.Component.processEvent(Unknown Source) ????????????? at java.awt.Container.processEvent(Unknown Source) ????????????? at java.awt.Component.dispatchEventImpl(Unknown Source) ????????????? at java.awt.Container.dispatchEventImpl(Unknown Source) ????????????? at java.awt.Component.dispatchEvent(Unknown Source) ????????????? at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source) ????????????? at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source) ????????????? at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source) ????????????? at java.awt.Container.dispatchEventImpl(Unknown Source) ????????????? at java.awt.Window.dispatchEventImpl(Unknown Source) ????????????? at java.awt.Component.dispatchEvent(Unknown Source) ????????????? at java.awt.EventQueue.dispatchEventImpl(Unknown Source) ????????????? at java.awt.EventQueue.access$500(Unknown Source) ????????????? at java.awt.EventQueue$3.run(Unknown Source) ????????????? at java.awt.EventQueue$3.run(Unknown Source) ????????????? at java.security.AccessController.doPrivileged(Native Method) ????????????? at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source) ????????????? at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source) ????????????? at java.awt.EventQueue$4.run(Unknown Source) ????????????? at java.awt.EventQueue$4.run(Unknown Source) ????????????? at java.security.AccessController.doPrivileged(Native Method) ????????????? at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source) ????????????? at java.awt.EventQueue.dispatchEvent(Unknown Source) ????????????? at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) ????????????? at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) ????????????? at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) ????????????? at java.awt.EventDispatchThread.pumpEvents(Unknown Source) ????????????? at java.awt.EventDispatchThread.pumpEvents(Unknown Source) ????????????? at java.awt.EventDispatchThread.run(Unknown Source) Caused by: org.xml.sax.SAXParseException; lineNumber: 4; columnNumber: 30; Attribute "border" must be declared for element type "ThrottleFrame". ????????????? at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source) ????????????? at org.apache.xerces.util.ErrorHandlerWrapper.error(Unknown Source) ????????????? at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) ????????????? at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) ????????????? at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) ????????????? at org.apache.xerces.impl.dtd.XMLDTDValidator.addDTDDefaultAttrsAndValidate(Unknown Source) ????????????? at org.apache.xerces.impl.dtd.XMLDTDValidator.handleStartElement(Unknown Source) ????????????? at org.apache.xerces.impl.dtd.XMLDTDValidator.startElement(Unknown Source) ????????????? at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source) ????????????? at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source) ????????????? at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) ????????????? at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) ????????????? at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) ????????????? at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) ????????????? at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) ????????????? at org.jdom2.input.sax.SAXBuilderEngine.build(SAXBuilderEngine.java:217) ????????????? ... 51 more ? |
Patrick,
toggle quoted message
Show quoted text
The turnout icons are correct. They indicate that the current turnout state is ¡°Unknown¡±. There are a number of methods for setting the initial state. Since I am usually using a simulated connection, I use a RTXINITIALIZER LRoute to set an internal sensor which triggers Route definitions to set turnouts and other sensors. Another approach is using a script, such as InitTurnouts.py. Some command stations have the ability to report current state. For the ThrottleFrame error, you will need to upload ¡°Throttle 072318.xml" to the ProblemsBeingWorkedOn file area. Dave Sand On Aug 10, 2018, at 2:57 PM, parsley26@... wrote: |
Dave, ? ? Thanks for direction on the turnout symbols; the problem resolves itself after the first usage and isn¡¯t as serious as the throttle. I will try the suggestions.
? Patrick Warden |
Patrick,
toggle quoted message
Show quoted text
I don¡¯t have much experience with Throttles. I created a new one and the xml file is a bit different. The fourth line no longer has a border=¡°??" attribute. You might try carefully editing the xml file and remove that content. Since you are running windows, do not use notepad or something like Word. You might try wordpad. Make a backup first. Dave Sand On Aug 10, 2018, at 4:00 PM, parsley26@... wrote: |
Hi Dave,
I edited the XML file in Wordpad and removed line 4 with the border attribute. Then other error messages appeared, <Error on line 11: Element type "number" must be declared.> When I deleted that line, the error message repeated, referring to another line. Each time the line in question was deleted, another random line would be named in the error message. Perhaps the program is not saving the throttle file in the correct format. Patrick W. |
Patrick,
toggle quoted message
Show quoted text
I am not able to re-create your throttle problem. How are you loading the throttle xml files? Please list the exact steps and menu selections. Dave Sand On Aug 10, 2018, at 6:23 PM, parsley26@... wrote: |
Dave,
I open the throttle panel from the main PanelPro window. PanelPro / Panels / Open Panel¡ / Documents / My JMRI / Throttle 072318. The file location for Throttle 072318 is in a new folder called My JMRI in my main Documents directory under my user name on the C drive. ? I tried saving and opening a throttle in the default location My JMRI Railroad under my user name, but it gave the same error message. I open the Throttle from Panel Pro / Panels / Open Panel¡ ?Thanks, Patrick W. |
Patrick,
toggle quoted message
Show quoted text
The problem is that you are trying to open the throttle XML as a panel xml file. That is causing the errors. To open a throttle xml file, go to "Tools >> Throttles >> Open Throttles Layout¡±. This will display the throttles that have been saved in the user files location ¡°throttle" directory. This is the normal location when you save a throttle. See for more information about throttles and throttle layouts. Dave Sand On Aug 13, 2018, at 11:20 AM, parsley26@... wrote: |