tango-controls-hdbpp / hdbpp-configurator Goto Github PK
View Code? Open in Web Editor NEWHDB++ Configurator GUI and java device server. Moved to https://gitlab.com/tango-controls/hdbpp/hdbpp-configurator
HDB++ Configurator GUI and java device server. Moved to https://gitlab.com/tango-controls/hdbpp/hdbpp-configurator
Dear hdbpp-configurator contributor (via commits, comments on issue or pull requests, issue creator),
If you have contributed in any way (commit, issue or Pull Request creation or comment) to hdbpp-configurator, please log into Gitlab.com using your Github account ASAP.
See https://gitlab.com/tango-controls/TangoTickets/-/issues/47 for details.
Please click on the following link and add your github account name to this framapad when you've already done the login to Gitlab.com using your Github account:
https://mensuel.framapad.org/p/migration_ready_2548763689
Please note that login on gitlab.com using your Github account is safe and doesn't give your Github password to Gitlab.
For convenience, here is the list of contributors we could already find (and who did not signal they had done it yet for another repo):
Thank you for your cooperation.
If for any reason one of the hdb++es-srv device server is off the diagnostics can not be done. Is it the expected behavior?
Java exception occurs when removing archived attribute.
How to reproduce?
Exception in thread "AWT-EventQueue-1" java.lang.StringIndexOutOfBoundsException: String index out of range: -1 at java.lang.String.substring(String.java:1927) at org.tango.hdb_configurator.common.TangoUtils.checkFQDN(TangoUtils.java:143) at org.tango.hdb_configurator.common.TangoUtils.fullName(TangoUtils.java:127) at org.tango.hdb_configurator.common.ArchiverUtils.getArchiver(ArchiverUtils.java:296) at org.tango.hdb_configurator.configurator.ManageAttributes.changeAttributeStates(ManageAttributes.java:272) at org.tango.hdb_configurator.configurator.ManageAttributes.pauseAttributes(ManageAttributes.java:239) at org.tango.hdb_configurator.configurator.HdbConfigurator$ListPopupMenu.menuActionPerformed(HdbConfigurator.java:1637) at org.tango.hdb_configurator.configurator.HdbConfigurator$ListPopupMenu.access$3100(HdbConfigurator.java:1519) at org.tango.hdb_configurator.configurator.HdbConfigurator$ListPopupMenu$1.actionPerformed(HdbConfigurator.java:1542) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) at javax.swing.AbstractButton.doClick(AbstractButton.java:376) at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:842) at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:886) at java.awt.Component.processMouseEvent(Component.java:6533) at javax.swing.JComponent.processMouseEvent(JComponent.java:3324) at java.awt.Component.processEvent(Component.java:6298) at java.awt.Container.processEvent(Container.java:2238) at java.awt.Component.dispatchEventImpl(Component.java:4889) at java.awt.Container.dispatchEventImpl(Container.java:2296) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4897) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4534) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4475) at java.awt.Container.dispatchEventImpl(Container.java:2282) at java.awt.Window.dispatchEventImpl(Window.java:2746) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90) at java.awt.EventQueue$4.run(EventQueue.java:733) at java.awt.EventQueue$4.run(EventQueue.java:731) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) at java.awt.EventQueue.dispatchEvent(EventQueue.java:730) at org.GNOME.Accessibility.AtkWrapper$5.dispatchEvent(AtkWrapper.java:700) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Hello, i'm in the process of installation of hdbpp suite and while the system works (i can configure and visualize my reccords) I encountered a bug/unusual behaviour as after few seconds the list of attributes to archive the program prints the message No heartbeat from dserver/hdb++es-srv/arch.
On start-up the program should list all attributes that were added to a subscriber device server.
On start-up the program list all attributes during few seconds then prints the message No heartbeat from dserver/hdb++es-srv/arch and the program become unusable because if we try to delete this message as we would do with an attribute a division by 0 error occurs.
During the few seconds affter the start up I was able to configure and launch the archiving of few attributes from the Tango Test device server and I was able to visualize those records in the Viewer tool. After reading this forum thread it seems that even if a lost of heartbeat from a device server occurs the events continue to be triggered so one possibility might be the simple suppression of the warning or better a popup that alert us of lost of heartbeat instead of blocking the entire program.
Hello.
I've downloaded the source code from this repo, compiled it with maven and tried to launch hdbpp-configurator, but it hasn't found its' main class
./start_gui.sh -configure
CLASSPATH=/usr/local/share/java/JTango.jar:/usr/local/share/java/ATKCore.jar:/usr/local/share/java/ATKWidget.jar:/home/tango/wk/hdbpp-configurator/target/hdbpp-configurator.jar:/usr/local/share/java/Jive.jar
Error: Could not find or load main class org.tango.hdb_configurator.configurator.HdbConfigurator
I edited start-gui to match my system configuration (Debian 9.7), here it is:
#!/bin/bash
# Define the class path
#
TANGO_JAVA_LIBS=/usr/local/share/java
APP_DIR=/home/tango/wk/hdbpp-configurator/target
JTANGO=$TANGO_JAVA_LIBS/JTango.jar
ATK=$TANGO_JAVA_LIBS/ATKCore.jar:$TANGO_JAVA_LIBS/ATKWidget.jar
CONFIGURATOR=$APP_DIR/hdbpp-configurator.jar
JIVE=$TANGO_JAVA_LIBS/Jive.jar
CLASSPATH=$JTANGO:$ATK:$CONFIGURATOR:$JIVE
echo "CLASSPATH=$CLASSPATH"
#
# Define the default GUI
#
APPLI_JAR=$APP_DIR/hdbpp-configurator.jar
APPLI_PACKAGE=org.tango.hdb_configurator
APPLI_MAIN_CLASS=configurator.HdbConfigurator
#
# Gives the hdbpp-cm-srv device
#
export HdbManager=sys/tools/hdb++cm
#=====================================
#
# Main part
#
#=====================================
DisplaySyntax() {
echo ""
echo "$0: "
echo "Options:"
echo " -configure: Start HDB++ configurator"
echo " -diag: Start HDB++ diagnostics window"
echo " -servers: Start HDB++ server status window"
echo " --help: Display this message"
}
#=====================================
case "$1" in
# ----------------------------------------------
-configure)
# Start Configurator
/usr/bin/java $APPLI_PACKAGE.$APPLI_MAIN_CLASS
;;
# ----------------------------------------------
-diag)
# Display disgnostics
java $APPLI_PACKAGE.diagnostics.HdbDiagnostics
;;
# ----------------------------------------------
-servers)
# Display servers status
java $APPLI_PACKAGE.diagnostics.ServerInfoTable
;;
# ----------------------------------------------
*)
# Default case --> Display Syntax
DisplaySyntax
;;
esac
When I tried to execute .jar without any dependencies, I've got message:
java -cp hdbpp-configurator-3.11-SNAPSHOT.jar org.tango.hdb_configurator.configurator.HdbConfigurator
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.NoClassDefFoundError: fr/esrf/Tango/DevFailed
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
at java.lang.Class.privateGetMethodRecursive(Class.java:3048)
at java.lang.Class.getMethod0(Class.java:3018)
at java.lang.Class.getMethod(Class.java:1784)
at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526)
Caused by: java.lang.ClassNotFoundException: fr.esrf.Tango.DevFailed
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 7 more
Also I downloaded compiled .jars from bintray and got the same errors.
What am i doing wrong and can you help me to solve this problem?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.