Menu

Problems with displayed values in DPWS Explorer

Help
Martin
2018-03-20
2018-05-16
  • Martin

    Martin - 2018-03-20

    Hi folks,

    I would like to push your attention to some DPWS Explorer problems. These problems are not new. They have occurred since months or even years.

    Let us start with some background information: As you might know, we use DPWS for medical device interoperability with the OR.NET projects (and its previous and follow-up projects). Therefore, we use a quite complex data model. So far so good. Basically, the DPWS explorer works quite well, apart from some problems. I provide an executable JAR-file providing an example service provider. You can use it to reproduce the problems. (Note, this particular implementation uses an older version of JMEDS in the background.)
    Download link: https://teamdrive.e-technik.uni-rostock.de/index.php/s/yGOqZo44QfegzZM (start with double click or >java -jar SimpleProvider.jar)

    a) The values displayed in the "Parameter Tree" are not complete. For me it looks like values are only displayed when they are stored in an element, but not if they are stored as an attribute. See picture: https://teamdrive.e-technik.uni-rostock.de/index.php/s/NUozOtWsg9jMduk
    There should be values for all of the attributes as well.

    All Information is available, as one can find the attribute values when having a look into the massage using "Communication Management/Diagnostics" (see picture: https://teamdrive.e-technik.uni-rostock.de/index.php/s/r53Uyo6Gj591gpx)

    b) If the transferred message is too big, the "XML Tree" (within "Communication Management/Diagnostics") representation does not work. "Raw Message" shows the correct information. You can reproduce this by invoking "GetService/GetService/GetMdState" (-> everything is fine) and "GetService/GetService/GetMdib" (-> "XML Tree" does not show anything)
    Pictures:
    https://teamdrive.e-technik.uni-rostock.de/index.php/s/vOH1fAdCXJhfsXF
    https://teamdrive.e-technik.uni-rostock.de/index.php/s/bIphvn2Miha4DiS
    https://teamdrive.e-technik.uni-rostock.de/index.php/s/EIfuZGcAld2N7rX

    c) Completely independent from a) and b) and from medical domain: Since many versions of DPWS explorer has been consuming approximately 40% (or more) of my CPU capacity

    Thank you very much for your effort and your support.

    Best regards
    Martin

     
  • Chris

    Chris - 2018-03-21

    Hi Martin,
    I'm getting the following exception if I try to run your jar:

    Starting SoftICE...
    Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
            at application.SoftIceTutorialProviderApplication.main(SoftIceTutorialProviderApplication.java:23)
    Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException
            at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
            at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source)
            at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
    

    Also, we are currently working on a new revision of JMEDS and JMEDS Explorer containing many bug fixes, code improvements and a few API improvements. A release is planned in the second half of 2018.

    Best regards,
    Chris

     
  • Chris

    Chris - 2018-03-21

    Hi again,
    I was able to run your client in Java8 (the error was from Java9).

    Your wsdl contains:

    <wsdl:import location="BICEPS_MessageModel.xsd" namespace="http://p11073-10207/draft9/msg/2017/09/18"/>
    

    This seems wrong to me, because you are importing a xsd into a wsdl.

    The proper way to do this is (see http://www.ws-i.org/profiles/basicprofile-1.1-2004-08-24.html#WSDL_and_Schema_Import):

    <wsdl:types>
        <xs:schema targetNamespace="http://p11073-10207/draft9/msg/2017/09/18" xmlns:xs="http://www.w3.org/2001/XMLSchema">
            <xs:include schemaLocation="BICEPS_MessageModel.xsd"/>
        </xs:schema>
    </wsdl:types>
    

    Best regards,
    Chris

     

    Last edit: Chris 2018-03-21
  • Martin

    Martin - 2018-03-24

    Hi Chris,

    thank you very much for your very quick response. I will forward this to the guys implementing our medical libraries. I'm curious about their answers :-).

    Thank you so much and best regards
    Martin

     
  • abesting

    abesting - 2018-04-04

    Hi,

    just changed the wsdl to your recommendation. It definately has some effect, but looks actually worse than before (see attached images). More attributes in state nodes seem to be missing.

     

    Last edit: abesting 2018-04-04
  • Chris

    Chris - 2018-04-09

    Hi,
    can you please attach an updated .jar file so I can test your new server?

     
  • abesting

    abesting - 2018-04-09

    Sorry, could have thought of that. I don't have Martin's example but created another one. I hope it helps.
    Please start from the console using "java -jar [file].jar"

    Then go to the get service and invoke getmdstate.
    thanks!

     
  • Chris

    Chris - 2018-04-27

    Hi,
    our soon-to-be-released JMEDS Explorer 4 seems to work well with your supplied device.

    If you are interested in a preview version, please send me a private message.

     
  • Martin

    Martin - 2018-05-16

    Hi Chris,

    is there a schedule for releasing the new version officially?

    Best regards
    Martin

     

Log in to post a comment.