openlvc / portico

Portico is an open source, cross-platform, fully supported HLA RTI implementation. Designed with modularity and flexibility in mind, Portico is a production-grade RTI for the Simulation and Training Community, so come say hi!
http://www.porticoproject.org
151 stars 81 forks source link

Java example not working - ieee1516e #335

Open rmpt opened 1 year ago

rmpt commented 1 year ago

I'm trying to run example in portico-2.1.0\examples\java\ieee1516e, but it doesn't seem to work.

As mentioned in the README.txt, I start one federate, don't press enter when requested, and start another federate so they can interact. Once the second federate joins, I get this error:

DEBUG [main] portico.lrc: org.portico.lrc.compat.JAttributeNotDefined: PUBLISH-OBJECT: attribute [-1] not defined in object class [HLAobjectRoot.Food.Drink.Soda]
hla.rti1516e.exceptions.AttributeNotDefined: org.portico.lrc.compat.JAttributeNotDefined: PUBLISH-OBJECT: attribute [-1] not defined in object class [HLAobjectRoot.Food.Drink.Soda]
        at org.portico.impl.hla1516e.Rti1516eAmbassador.publishObjectClassAttributes(Rti1516eAmbassador.java:1161)
        at ieee1516e.ExampleFederate.publishAndSubscribe(ExampleFederate.java:403)
        at ieee1516e.ExampleFederate.runFederate(ExampleFederate.java:281)
        at ieee1516e.ExampleFederate.main(ExampleFederate.java:560)
Caused by: org.portico.lrc.compat.JAttributeNotDefined: PUBLISH-OBJECT: attribute [-1] not defined in object class [HLAobjectRoot.Food.Drink.Soda]
        at org.portico.lrc.services.object.data.InterestManager.register(InterestManager.java:160)
        at org.portico.lrc.services.object.data.InterestManager.register(InterestManager.java:108)
        at org.portico.lrc.services.object.data.InterestManager.publishObjectClass(InterestManager.java:619)
        at org.portico.lrc.services.pubsub.handlers.outgoing.PublishObjectClassHandler.process(PublishObjectClassHandler.java:110)
        at org.portico.utils.messaging.MessageSink.process(MessageSink.java:187)
        at org.portico.impl.hla1516e.Impl1516eHelper.processMessage(Impl1516eHelper.java:130)
        at org.portico.impl.hla1516e.Rti1516eAmbassador.processMessage(Rti1516eAmbassador.java:5559)
        at org.portico.impl.hla1516e.Rti1516eAmbassador.publishObjectClassAttributes(Rti1516eAmbassador.java:1135)

Seems the attribute is not found in the described FOM or something, aldo, the -1 seems like some internal discover bug, that portico cannot find the indicated attribute for the specific class. I've experienced the exact same error with another FOM file.