¿ªÔÆÌåÓý

Locked JMRI 4.8 is available for download


 

Hi

I appear to be having problems now with 4.8 with my matrix signal mast entries that have been working fine in 4.6 but now I'm getting "Invalid content was found starting with element 'outputs'. One of '{systemName, disabledAspects}' is expected. As can be seen below the disabled aspects are there but possibly in a different order than the new version is expecting. I had recently been chasing out problems with speed definitions as my signal aspects file was incorrect and after getting all that sorted the layout editor file was loading without problems showing in the system console. As guided by Bob I have had a look at the release notes but there doesn't seem to be any mention of this being a problem. Perhaps with it being comparatively new there are not so many people using it yet. Now I sit here looking at it, it seems quite strange that it is necessary to have all the disabled aspects listed in the bitStrings section. I guess there is a reason but I can't imagine what that would be.

The first definition with "outputs" and that is for the last signal before a set of terminus roads with buffer stops looks like

<signalmast class="jmri.implementation.configurexml.MatrixSignalMastXml" userName="CW12">
<systemName>IF$xsm:BR-2003 fws:F+4+c($0012)-2t</systemName>
<userName>CW12</userName>
<unlit allowed="no" />
<outputs>
<output matrixCol="output1">CW12 Ch1</output>
<output matrixCol="output2">CW12 Ch2</output>
</outputs>
<bitStrings>
<bitString aspect="Danger">00</bitString>
<bitString aspect="Caution">10</bitString>
<bitString aspect="Flash Caution">00</bitString>
<bitString aspect="Preliminary Caution">00</bitString>
<bitString aspect="Flash Preliminary Caution">00</bitString>
<bitString aspect="Proceed">00</bitString>
<bitString aspect="Diverging1C">00</bitString>
<bitString aspect="Diverging1pC">00</bitString>
<bitString aspect="Diverging1P">00</bitString>
<bitString aspect="Diverging2C">00</bitString>
<bitString aspect="Diverging2pC">00</bitString>
<bitString aspect="Diverging2P">00</bitString>
<bitString aspect="Diverging3C">00</bitString>
<bitString aspect="Diverging3pC">00</bitString>
<bitString aspect="Diverging3P">00</bitString>
<bitString aspect="Off">01</bitString>
</bitStrings>
<disabledAspects>
<disabledAspect>Diverging1pC</disabledAspect>
<disabledAspect>Diverging3pC</disabledAspect>
<disabledAspect>Diverging2pC</disabledAspect>
<disabledAspect>Proceed</disabledAspect>
<disabledAspect>Diverging3C</disabledAspect>
<disabledAspect>Preliminary Caution</disabledAspect>
<disabledAspect>Diverging1C</disabledAspect>
<disabledAspect>Diverging2C</disabledAspect>
<disabledAspect>Diverging2P</disabledAspect>
<disabledAspect>Diverging3P</disabledAspect>
<disabledAspect>Flash Caution</disabledAspect>
<disabledAspect>Flash Preliminary Caution</disabledAspect>
<disabledAspect>Diverging1P</disabledAspect>
</disabledAspects>
</signalmast>

Thanks

Fraser


 

I don¡¯t think that particular element is the problem. For one thing, it¡¯s a regular mast: Matrix masts are (I think) stored as <matrixsignalmast> elements. Could you show an example of that? There¡¯s also a line number in the error message that can (sometimes) help.

The XML format for <signalmast> says that it wants to see the order (some are optional) systemName, userName, comment, properties, unlit, outputs, bitStrings, disabledAspects.

See and look for the section on SignalMastType

Matrix masts expect that same order inside their <matrixsignalmast>

Bob

On Jul 24, 2017, at 1:00 PM, fraser@... [jmriusers] <jmriusers@...> wrote:

I appear to be having problems now with 4.8 with my matrix signal mast entries that have been working fine in 4.6 but now I'm getting "Invalid content was found starting with element 'outputs'. One of '{systemName, disabledAspects}' is expected. As can be seen below the disabled aspects are there but possibly in a different order than the new version is expecting. I had recently been chasing out problems with speed definitions as my signal aspects file was incorrect and after getting all that sorted the layout editor file was loading without problems showing in the system console. As guided by Bob I have had a look at the release notes but there doesn't seem to be any mention of this being a problem. Perhaps with it being comparatively new there are not so many people using it yet. Now I sit here looking at it, it seems quite strange that it is necessary to have all the disabled aspects listed in the bitStrings section. I guess there is a reason but I can't imagine what that would be.

The first definition with "outputs" and that is for the last signal before a set of terminus roads with buffer stops looks like
--
Bob Jacobsen
rgj1927@...


 

Hi Bob

Thanks for looking at this but having looked at the schema for matrix signal mast and checked which line it was that was causing the problem it is the bit I've copied that is where the problem is. It definitely says matrixsignalmastxml for the class in the first line and the order of the sections within ny quoted bit matches the requirements of the schema.

Line 3107 is the problem and that is the sixth line of my excerpt

<output matrixCol="output1">CW12 Ch1</output>

I've searched through the file and the only places where output or outputs occurs is within my matrix signal mast definition section. I've dumped my complete layout editor xml file at



By the way I'm not in a hurry for the answer so you can dedicate your time to other more serious problems.

Thanks

Fraser


 

Fraser,

I downloaded your file and it validates just fine on 4.8.

It does, however, blow up on turnout "MT " (with a space).

Dave Sand


 

The very recent update for DecoderPro definitions for SoundTraxx (TSU2)
doesn't appear to have made it into 4.8. I think this means that the update
needs to be reloaded after installing 4.8. Or am I wrong?



Mark Granville


 

On Jul 24, 2017, at 5:57 PM, 'Mark Granville' mfgranville@... [jmriusers] <jmriusers@...> wrote:

The very recent update for DecoderPro definitions for SoundTraxx (TSU2)
doesn't appear to have made it into 4.8. I think this means that the update
needs to be reloaded after installing 4.8. Or am I wrong?
The production version was frozen for testing, so some updates didn¡¯t make it into JMRI 4.8. They¡¯re in the JMRI 4.9.1 release that came out shortly after.

Re-installing those decoder files should be fine.

Bob
--
Bob Jacobsen
rgj1927@...


 

Hi Bob, Dave

I just downloaded the file that Dave checked and said was working fine to ensure we are looking at the same thing. I removed the offending "MT " block (that I have no idea where it came from as it's a very long time since I created any new turnouts) and tried loading it into PanelPro.With the four lines of the turnout bit removed the load now dies at line 3103: the first instance of outputs in the first signal definition in the file.

I have also tried loading another, smaller file that I use on a demo board that also uses the matrix signal driver and that too stops at the first mention of outputs. I was using that at a MERG meeting on Sunday and before that had fleetingly installed 4.8 immediately after it was announced but very quickly reverted to 4.6 as I met the current problem then and did not have the time before the meeting to investigate it.

I have just uninstalled, downloaded and reinstalled 4.8 and still get the same problem. I installed Java 8 update 141 yesterday if that's of any consequence but the current problem predates that change. I'm running win10.

One thing that does puzzle me that I have realised while looking at the loading error message, console output and running the XML validator in PP is that although the "Invalid content was found . . " bit is the same in all three, the line numbers are very different: 3103 in console and 7701 when loading and in the validator.

I just tried removing all my matrix mast definitions to see if that would allow the file to load but that didn't work either stopping in the oblocks section that I had been working on a couple of weeks back. The message was "Error on line 5003: cvc-complex-type.2.4.a: Invalid content found starting with element 'portal'. One of '{sensor, errorSensor, path}' is expected." This section has been built up using the OBlocks forms in PP so I guess it should follow the correct schema. Not sure if that is of any help.

<oblocks class="jmri.jmrit.logix.configurexml.OBlockManagerXml">
<oblock systemName="OB001" userName="CC00" length="0.0" units="false" curve="0" permissive="false" speedNotch="">
<userName>CC00</userName>
<sensor systemName="CC00" />
<portal systemName="IP1" portalName="CC00-SW14">
<fromBlock blockName="OB001" />
<toBlock blockName="OB091" />
</portal>
<portal systemName="IP2" portalName="SL6-CC00">
<fromBlock blockName="OB136" />
<toBlock blockName="OB001" />
</portal>
</oblock>


Thank you very much for your assistance in this matter.

Fraser


 

Fraser,

This may seem strange but try it anyway:

Create a new profile. If you are using the profile selector, use the New button. If not, go to "Preferences >> Config Profile". After the profile is functional, try loading the panel xml file.

Dave Sand


 

Hi Fraser, I looked at your XML panel file, but am pretty sure the structure of the matrix signal masts is ok despite being written in 4.6. After I deleted all the extra stuff, except for 1 matrix mast and the two turnouts used as outputs, it loaded fine in de signal mast table. Didn't check your custom appearance file, but saw another error message about some "" (that's empty) number format exception for a Cbus turnout that was gone when I took out all but the 2 turnouts. You've got quite a list, so I'm sorry I was unable to look at each one.
Is there a place where you use this particular matrix mast in either an icon on your panel, in Signal Mast Logic or a signal group. That could be the spot where the mast is loaded again, and we might not have tested before. Still, my approach to find the cause would be to first take out the LayoutEditor panel and then cut the remaining file in half and see what happens. If OK, check the other half.
Please let us know what you find.


Egbert


 

Hi Dave, Egbert

David, I tried as you suggested but no change as to what happens. I then removed 4.8 completely including the bits in C:&#92;user&#92;fraser&#92;JMRI and renamed my user files folder so that I could in effect start from scratch. I installed 4.8 and set my user files directory to C:&#92;Users&#92;Fraser&#92;Documents&#92;Railway&#92;JMRI&#92;. This is where I have been working quite happily with previous versions and it's there as it is within my Railway folder that is backed up and synchronised with a Synology NFS. I have copied into here just my roster, my BR2003 FWS signal definition and the resources to go with that and of course my panelpro file 37 heaven. On opening the file in PanelPro I had the same failure as before "Error on line 3206: cvc-complex-type.2.4.a: Invalid content was found starting with element 'outputs'. One of '{systemName, disabledAspects}' is expected."

Then, before I saw Egberts response I started a new, simple layout from scratch "straight.xml". I have uploaded that to . I defined the sensors and blocks, made the track plan, defined the turnouts then signal masts then created the signalmast logic. I then saved it, quit and restarted and this is what appeared in the Console
2017-07-27 09:21:55,867 util.Log4JUtil INFO - * JMRI log ** [main]
2017-07-27 09:21:55,891 util.Log4JUtil INFO - This log is appended to file: C:&#92;Users&#92;Fraser&#92;JMRI&#92;log&#92;messages.log [main]
2017-07-27 09:21:55,892 util.Log4JUtil INFO - This log is stored in file: C:&#92;Users&#92;Fraser&#92;JMRI&#92;log&#92;session.log [main]
2017-07-27 09:21:55,904 apps.Apps INFO - PanelPro version 4.8+Rbe0ff15 starts under Java 1.8.0_141 on Windows 10 x86 v10.0 at Thu Jul 27 09:21:55 BST 2017 [main]
2017-07-27 09:21:56,531 apps.Apps INFO - Starting with profile My_JMRI_Railroad.3f03df36 [main]
2017-07-27 09:21:56,997 node.NodeIdentity INFO - Using jmri-0019D1E3BBD1-3f03df36 as the JMRI Node identity [main]
2017-07-27 09:21:57,093 managers.JmriUserPreferencesManager ERROR - Unable to retrieve property "windowRectangle2D" for window "jmri.jmrit.display.layoutEditor.LayoutEditor:My Layout" [main]
2017-07-27 09:21:57,341 configurexml.ConnectionConfigXml INFO - CAN Simulator Started [main]
2017-07-27 09:22:01,639 util.FileUtilSupport INFO - File path program: is C:&#92;Program Files (x86)&#92;JMRI&#92; [main]
2017-07-27 09:22:01,640 util.FileUtilSupport INFO - File path preference: is C:&#92;Users&#92;Fraser&#92;Documents&#92;Railway&#92;JMRI&#92; [main]
2017-07-27 09:22:01,641 util.FileUtilSupport INFO - File path profile: is C:&#92;Users&#92;Fraser&#92;JMRI&#92;My_JMRI_Railroad&#92; [main]
2017-07-27 09:22:01,642 util.FileUtilSupport INFO - File path settings: is C:&#92;Users&#92;Fraser&#92;JMRI&#92; [main]
2017-07-27 09:22:01,643 util.FileUtilSupport INFO - File path home: is C:&#92;Users&#92;Fraser&#92; [main]
2017-07-27 09:22:01,644 util.FileUtilSupport INFO - File path scripts: is C:&#92;Program Files (x86)&#92;JMRI&#92;jython&#92; [main]
2017-07-27 09:22:11,309 configurexml.ErrorHandler ERROR - Parse error while parsing file /C:/Users/Fraser/Documents/Railway/JMRI/straight.xml Exception: org.jdom2.input.JDOMParseException: Error on line 139: cvc-complex-type.2.4.a: Invalid content was found starting with element 'matrixsignalmast'. One of '{turnoutsignalmast, dccsignalmast, signalmast, virtualsignalmast, signalmastrepeater}' is expected.
See for possibly more information. [AWT-EventQueue-0]

There is something VERY strange going on here!! I would imagine that a file written in 4.8 would open without eror in 4.8. The first matrix mast definition in straight starts as

<matrixsignalmast class="jmri.implementation.configurexml.MatrixSignalMastXml">
<systemName>IF$xsm:BR-2003 fws:F+4+c($0001)-3t</systemName>
<userName>two</userName>
<properties>
<property>
<key>intermediateSignal</key>
<value class="java.lang.Boolean">true</value>
</property>
</properties>
<unlit allowed="no" />
<outputs>
<output matrixCol="output1">S1C1</output>

wheras my 37 heaven starts like

<signalmast class="jmri.implementation.configurexml.MatrixSignalMastXml" userName="CW12">
<systemName>IF$xsm:BR-2003 fws:F+4+c($0012)-2t</systemName>
<userName>CW12</userName>
<unlit allowed="no" />
<outputs>
<output matrixCol="output1">CW12 Ch1</output>
<output matrixCol="output2">CW12 Ch2</output>
</outputs>
<bitStrings>
<bitString aspect="Danger">00</bitString>

These are quite different. Egbert, I'll have a go at your idea soon. Other stuff to do first.

Thanks as ever

Fraser

---In jmriusers@..., <dcc2@...> wrote :

Hi Fraser, I looked at your XML panel file, but am pretty sure the structure of the matrix signal masts is ok despite being written in 4.6. After I deleted all the extra stuff, except for 1 matrix mast and the two turnouts used as outputs, it loaded fine in de signal mast table. Didn't check your custom appearance file, but saw another error message about some "" (that's empty) number format exception for a Cbus turnout that was gone when I took out all but the 2 turnouts. You've got quite a list, so I'm sorry I was unable to look at each one.
Is there a place where you use this particular matrix mast in either an icon on your panel, in Signal Mast Logic or a signal group. That could be the spot where the mast is loaded again, and we might not have tested before. Still, my approach to find the cause would be to first take out the LayoutEditor panel and then cut the remaining file in half and see what happens. If OK, check the other half.
Please let us know what you find.


Egbert


 

Hi Egbert

That "MT " that you found is exactly the same as that found by Dave Sand a couple of days ago. I removed it then and that changed the line number of the "Outputs" error when loading. I didn't understand where it came from before but the fact that it has come back again could be due to one of two things: 1) JMRI is introducing it for some reason or 2) it is possible that I have reintroduced it when I downloaded the one that I uploaded and with all that's going on forgot to remove it again. Probably the latter. It is/was the very first entry in the turnouts section.

I have another computer in the loft that I will stop the Synology synchronisation on and attempt the complete removal of JMRI from and do as clean an install as I can of 4.8 and then try making up the "straight" panel again and see how that behaves.

Cheers

Fraser


 

Fraser,

With 4.8 installed, search your ENTIRE machine for file name signalmasts-2.9.6.xsd


The number of lines in the file should be around 406.


If you have more than 1 file, you have another JMRI install somewhere. The 4.6 version of that file has 253 lines. If JMRI happens to use an old version of the file, that would explain the validation errors.


If you only have one occurrence of the file, but the size is wrong, maybe the Synology is replacing it.


Dave Sand


Donald Dilllaby
 

Dave:



Is that the file you modified for me for use with JMRI 4.6? I have yet to
download version 4.8.





Donald Dillaby

27 Palisade Dr

Nashua, NH 03062-2119

603-888-2766

603-305-5523







From: jmriusers@... [mailto:jmriusers@...]
Sent: Thursday, July 27, 2017 10:54 AM
To: jmriusers@...
Subject: [jmriusers] Re: JMRI 4.8 is available for download





Fraser,

With 4.8 installed, search your ENTIRE machine for file name
signalmasts-2.9.6.xsd


The number of lines in the file should be around 406.


If you have more than 1 file, you have another JMRI install somewhere. The
4.6 version of that file has 253 lines. If JMRI happens to use an old
version of the file, that would explain the validation errors.


If you only have one occurrence of the file, but the size is wrong, maybe
the Synology is replacing it.


Dave Sand


 

Donald,

No. The file I modified for was an appearance file for SPTCO-1930 signal system. Those changes are included in 4.8.


Dave Sand


Donald Dilllaby
 

Ok Dave. Thanks.





Donald Dillaby

27 Palisade Dr

Nashua, NH 03062-2119

603-888-2766

603-305-5523







From: jmriusers@... [mailto:jmriusers@...]
Sent: Thursday, July 27, 2017 1:37 PM
To: jmriusers@...
Subject: [jmriusers] Re: JMRI 4.8 is available for download





Donald,

No. The file I modified for was an appearance file for SPTCO-1930 signal
system. Those changes are included in 4.8.


Dave Sand


 

Hi Dave

I searched and searched for signalmasts-2.6.9.xsd but no instances of that file found. I then tried *6.xsd and found signalmasts-2-9-6.xsd so I guess I had been looking for the wrong file name. It was the wrong version in the C:&#92;Program Files (x86)&#92;JMRI&#92;xml&#92;schema&#92;types and in my own jmri&#92;xml&#92;schema&#92;types. So I uninstalled and cleaned out all the JMRI folders, turned off Synology and installed 4.8 again. This time I have the 406 line file so success that far. Then I transferred my signal files and panelpro file back to my user area and loaded the panelpro file. IT WORKED!!

I guess the culprit might have been the Synology drive synchronising the old file backwards although I don't see why it should do that. Bed time now so I shall have to see what the Synology does when I turn it back on again.

Thankyou Bob, Dave and Egbert for your time, Dave especially for spotting the potential problem.

Cheers

Fraser


 

HI

More thoughts on this problem. Two years back, when I started to define my own signal masts, I needed to have my own version of the signals in my user files folder to work from. I think now I must have copied the whole xml folder from the C:&#92;Program Files (x86)&#92;JMRI&#92; folder and that would have included the schema&#92;types folder where signalmasts-2-9-6.xsd is located giving me two copies of that file. When I did the upgrade to 4.8 it would have written the upgraded version to the program files folder but the old version, still in my user files folder, would have taken precedence when loading and given me the problem.

It all seems so obvious now in hindsight but back then there was just so much to get to grips with that remembering all that I had done was just about impossible. A little learning is a dangerous thing!

Again thanks to all who helped here.

Fraser