Thursday, 15. January 2009
JMX over SNMP
javatux, 11:07h
Theoretisch kann man die Java Management Extensions (JMX) auch über SNMP abfragen. Dazu wird der SNMP-Agent über die Properties
Aber wie komme ich an die INFO ran? Unter Linux ruft man dazu das Kommando snmpwalk auf:
Wie ich soeben von Tobias Frech erfahren habe, kann man auch nur die Sun-MBeans über SNMP abfragen, d.h. eigene MBeans erscheinen nicht in der Auflistung.
-Dcom.sun.management.snmp.port=6070 -Dcom.sun.management.snmp.acl=falseaktiviert (zu Testzwecken hier nicht abgesichert, s.a. JVM-Monitoring-Folien von Tobias Frech).
Aber wie komme ich an die INFO ran? Unter Linux ruft man dazu das Kommando snmpwalk auf:
% snmpwalk -v1 -c public localhost:6070 . SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.1.1.0 = Gauge32: 1914 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.1.4.0 = INTEGER: 1 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.1.0 = Gauge32: 0 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.2.0 = INTEGER: 1 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.3.0 = INTEGER: 2 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.100.1.2.1 = STRING: "CodeCacheMana ger" SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.100.1.2.2 = STRING: "Copy" SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.100.1.2.3 = STRING: "MarkSweepComp act" SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.100.1.3.1 = INTEGER: 2 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.100.1.3.2 = INTEGER: 2 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.100.1.3.3 = INTEGER: 2 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.2.1 = STRING: "Code Cache" SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.2.2 = STRING: "Eden Space" ...Insgesamt scheint mir das aber ein wenig praktikabler Weg zu sein, da man über den Aufbau der SUN-SNMP-MIB nichts zu JMX findet.
Wie ich soeben von Tobias Frech erfahren habe, kann man auch nur die Sun-MBeans über SNMP abfragen, d.h. eigene MBeans erscheinen nicht in der Auflistung.
... link (0 Kommentare) ... comment
Sunday, 11. January 2009
Aufruf zu den Test-Tagen 2009
javatux, 21:35h
Letztes Jahr hat die JUGS die Test-Tage 2009 angekündigt. Als Einstieg zu den Test-Tagen gibt es auch eine Beispiel-Anwendung, die als JugsBaseKomplett.zip heruntergeladen werden kann. Falls Sie einen Beitrag einreichen wollen, können Sie diese Anwendung als Basis verwenden, Sie können aber auch auf Ihre gewohnten Beispiele zurückgreifen. Der Rest diesen Beitrags wird jetzt darum gehen, wie man diese Anwendung in Eclipse einbindet.
Voraussetzung für die Einbindung ist Eclipse 3.3 oder 3.4 mit den Web-Tools (WTP), Java 5 und Tomcat 5.5 oder Tomcat 6 (damit habe ich es unter MacOS-X getestet). Nach dem Auspacken der Zip-Datei finden Sie ein Verzeichnis JugsBase vor, das eine startbare JAR- und WAR-Datei enthält (die wir aber ignorieren). Wir importieren das Verzeichnis (File > Import...) über "Existing Projects into Workspace" als JavaEE-Projekt.
Ein Großteil der Fehler, die nach dem Import in der Problems-View zu sehen sind, sind HTML-Fehler, die wir vorerst über "Project > Properties > Validation > HTML Syntax" und der Einstellung "Missing start tag: Ignore" (dazu evtl. noch "Enable project specific settings" selektieren) ausblenden. Wenn Sie mit Java 5 arbeiten, sollten in den Project-Properties die "Project Facets" auswählen - dort ist Java 6 eingestellt, es reicht aber auch Java 5. Danach sollten keine Fehler mehr in der Problems-View auftauchen.
Öffnen Sie nun die Server-View und fügen dort das JugsBase-Projekt als JEE-Anwendung hinzu (Tomcat-Server auswählen, "Add and Remove Projects..."). Wenn Sie dann den Server starten, sollte ein aktueller Finanzrechner unter http://localhost:8080/JugsBase/ erscheinen.
Voraussetzung für die Einbindung ist Eclipse 3.3 oder 3.4 mit den Web-Tools (WTP), Java 5 und Tomcat 5.5 oder Tomcat 6 (damit habe ich es unter MacOS-X getestet). Nach dem Auspacken der Zip-Datei finden Sie ein Verzeichnis JugsBase vor, das eine startbare JAR- und WAR-Datei enthält (die wir aber ignorieren). Wir importieren das Verzeichnis (File > Import...) über "Existing Projects into Workspace" als JavaEE-Projekt.
Ein Großteil der Fehler, die nach dem Import in der Problems-View zu sehen sind, sind HTML-Fehler, die wir vorerst über "Project > Properties > Validation > HTML Syntax" und der Einstellung "Missing start tag: Ignore" (dazu evtl. noch "Enable project specific settings" selektieren) ausblenden. Wenn Sie mit Java 5 arbeiten, sollten in den Project-Properties die "Project Facets" auswählen - dort ist Java 6 eingestellt, es reicht aber auch Java 5. Danach sollten keine Fehler mehr in der Problems-View auftauchen.
Öffnen Sie nun die Server-View und fügen dort das JugsBase-Projekt als JEE-Anwendung hinzu (Tomcat-Server auswählen, "Add and Remove Projects..."). Wenn Sie dann den Server starten, sollte ein aktueller Finanzrechner unter http://localhost:8080/JugsBase/ erscheinen.
... link (2 Kommentare) ... comment
Sunday, 14. September 2008
Java-Konferenz in Berlin
javatux, 11:52h
Vom 13. bis 14. September tagte die berlin.jar an der FHTW. Schon die Taxifahrt vom Bahnhof war beeindruckend - Berlin ist verdammt groß. Die Konferenz selbst war zwar mit 200 Teilnehmer etwas übersichtlicher, aber doch beachtlich, da es die erste Java-Konferenz in Berlin war.
Auch wenn es die erste Konferenz war und mit bescheidenen finanziellen Mitteln organisiert wurde, machte es eine recht professionellen Eindruck, auch wenn es hin und wieder kleinere Pannen gab. Aber diese machen gerade den Reiz einer solchen Konferenz aus.
Die Konferenz beschränkte sich zwar vorwiegend auf das 2. Stockwerk, dennoch hatte ich einige Male Schwierigkeiten, mich auf dem Campus der FHTW zurechtzufinden. So war ich froh, dass ich aus den Katakomben der Fachhochschule, in die mich die Suche nach der Essensausgabe geführt hat, wieder heil herausgefunden habe. Ich habe mich noch einige Male in dem Gebäude verlaufen und war jedesmal wieder froh, einen der zahlreichen Hinweis-Pfeile zu entdecken, ohne die ich in dem Gebäudekomplex der FHTW verloren gewesen wäre.
Es standen einige interessante Vorträge zur Auswahl, zu denen ich leider nicht alle gehen konnte. Beim abendlichen Grillen hatte man dann Zeit, sich mit dem ein oder anderen auszutauschen, was auch intensiv genutzt wurde. Dankenswerterweise fingen die Vorträge am Sonntag erst um 10 Uhr an.
Meine Folien zur Konferenz:
Auch wenn es die erste Konferenz war und mit bescheidenen finanziellen Mitteln organisiert wurde, machte es eine recht professionellen Eindruck, auch wenn es hin und wieder kleinere Pannen gab. Aber diese machen gerade den Reiz einer solchen Konferenz aus.
Die Konferenz beschränkte sich zwar vorwiegend auf das 2. Stockwerk, dennoch hatte ich einige Male Schwierigkeiten, mich auf dem Campus der FHTW zurechtzufinden. So war ich froh, dass ich aus den Katakomben der Fachhochschule, in die mich die Suche nach der Essensausgabe geführt hat, wieder heil herausgefunden habe. Ich habe mich noch einige Male in dem Gebäude verlaufen und war jedesmal wieder froh, einen der zahlreichen Hinweis-Pfeile zu entdecken, ohne die ich in dem Gebäudekomplex der FHTW verloren gewesen wäre.
Es standen einige interessante Vorträge zur Auswahl, zu denen ich leider nicht alle gehen konnte. Beim abendlichen Grillen hatte man dann Zeit, sich mit dem ein oder anderen auszutauschen, was auch intensiv genutzt wurde. Dankenswerterweise fingen die Vorträge am Sonntag erst um 10 Uhr an.
Meine Folien zur Konferenz:
- Java gestern, heute, morgen helloberlinjar (pdf, 1,316 KB) (Folien zur Begrüßung im Audimax der FHTW)
- Aspektorientierung - gibt es ein Leben nach Java und OO? aspektorientierung (pdf, 3,059 KB)
... link (0 Kommentare) ... comment
Saturday, 1. March 2008
JUGS ObjektForum
javatux, 11:58h
Am 25. Februar gestaltete die Java User Group Stuttgart zusammen mit andrena objects ag eine Abend zum Thema Software-Qualität. |
|
... link (0 Kommentare) ... comment
Thursday, 20. December 2007
UML-Editor für Eclipse
javatux, 19:42h
Modelle sind eigentlich nur was für Müsli-Programmer und Spanner, aber manchmal kommt man auch als "Real Programmer" nicht herum, Abläufe und Beziehungs-Probleme aufzumalen (nicht nur, weil es der Vorgesetzter so will, sondern weil es (über)lebenswichtige Diagramme gibt). Was man eigentlich immer braucht, ist ein Übersichtsbild über die gesamte Architektur (und das sollte möglichst aktuell gehalten werden!!!).
Wenn man seine Architekturen nicht immer mit Papier und Bleistift zeichnen will (auch das hat seinen Reiz und ist nicht immer der schlechteste Ansatz), kommt schnell der Wunsch nach einem UML-Tool auf. Zwei Eclipse-Plugins habe ich mir dazu näher angeschaut: Violet UML Editor und eUML2 (Free Edition).
Vorteile:
Vorteile:
Wenn man seine Architekturen nicht immer mit Papier und Bleistift zeichnen will (auch das hat seinen Reiz und ist nicht immer der schlechteste Ansatz), kommt schnell der Wunsch nach einem UML-Tool auf. Zwei Eclipse-Plugins habe ich mir dazu näher angeschaut: Violet UML Editor und eUML2 (Free Edition).
Violet UML Editor
Mein früherer Kunstlehrer meinte zwar immer, Lila ist die Farbe des Schwachsinns, aber dies gilt nicht für den lila Editor unter den UML-Tools. Auch wenn er ein Eclipse-Plugin ist, kann man ihn auch als Webstart-Anwendung starten - ideal für das kleine Diagramm zwischendurch.Vorteile:
- einfach zu bedienen
- auch als Webstart-Anwendung verfügbar
- kann leider nur Graphiken als PNG exportieren
- binäres Ablageformat (mag ich nicht so)
eUML2 (Free Edition)
Das eUML2-Plugin von Soyatec ist zwar ein kommerzielles Plugin, aber es gibt es auch in einer eingeschränkten "Free Edition", die für viele Fälle ausreichend sein dürfte. Was mir besonders gut gefallen hat, ist die Ablage direkt als XMI (Version 2.0) und die vielfältigen Export-Möglichkeiten der Diagramme (u.a. XVG und WMF, letzteres aber nicht in der Free Edition).Vorteile:
- direkte Ablage als XMI
- verschiedene Export-Möglichkeiten der Diagramme
Fazit
Beide UML-Tools eignen sich dafür, wenn man z.B. schnell mal ein Sequenz-Diagramm malen will. Inwieweit sie auch für größere Aufgaben geeignet sind, kann ich (noch) nicht beurteilen...... link (0 Kommentare) ... comment
Friday, 7. December 2007
10 Jahre JUGS
javatux, 23:33h
Gestern feierten wir von der Java User Group Stuttgart unser 10-jähriges Bestehen. Ich war zwar nicht von Anfang an dabei, aber doch schon ziemlich lange. Interessant war vor allem der Rückblick auf die "gute alte Zeit"; und die Erkenntis, dass die Probleme immer noch (fast) die gleichen sind wie damals.
Mal seh'n, was die nächsten 10 Jahre so bringen werden...
2007-12-Ju |
Mal seh'n, was die nächsten 10 Jahre so bringen werden...
... link (0 Kommentare) ... comment
Wednesday, 24. October 2007
Error initializing MyFaces
javatux, 14:33h
Beim Umstieg von JSF auf MyFaces 1.2.0 trat beim Hochfahren von Tomcat6 folgende Fehlermeldung auf:
Schuld daran ist die web-facesconfig_1_1.dtd, die nicht mehr mit MyFaces 1.2.0 ausgeliefert wird. Daher sollte man bei Verwendung von JSF 1.2 nicht mehr die DTD, sondern die entsprechende XSD angeben:
Damit sollte dann Tomcat (oder andere Servlet-Container) ohne diese Exception starten.
Wer allerdings zum Editieren der faces-config.xml die Faces-Console von James Holmes verwendet, wird feststellen, dass sich damit diese Datei nicht mehr grafisch editieren lässt. Abhilfe: auf eine anderen Editor umsteigen - allerdings habe ich bis jetzt noch keine wirkliche Alternative für die Faces-Console gefunden.
INFO: Reading standard config META-INF/standard-faces-config.xml 24.10.2007 12:24:28 org.apache.myfaces.config.FacesConfigurator feedWebAppConfig INFO: Reading config /WEB-INF/faces-config.xml 24.10.2007 12:24:31 org.apache.myfaces.webapp.DefaultFacesInitializer initFaces SCHWERWIEGEND: Error initializing MyFaces: java.net.UnknownHostException: java.sun.com javax.faces.FacesException: java.net.UnknownHostException: java.sun.com at org.apache.myfaces.config.FacesConfigurator.configure(FacesConfigurator.java:182) at org.apache.myfaces.webapp.DefaultFacesInitializer.initFaces(DefaultFacesInitializer.java:112)Offensichtlich wurde beim Einlesen der faces-config.xml diese XML-Datei validiert. Schuld daran ist der folgende Eintrag:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE faces-config PUBLIC
"-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
"http://java.sun.com/dtd/web-facesconfig_1_1.dtd" >
<faces-config>
...
Schuld daran ist die web-facesconfig_1_1.dtd, die nicht mehr mit MyFaces 1.2.0 ausgeliefert wird. Daher sollte man bei Verwendung von JSF 1.2 nicht mehr die DTD, sondern die entsprechende XSD angeben:
<?xml version="1.0" encoding="UTF-8"?>
<faces-config version="1.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd">
Damit sollte dann Tomcat (oder andere Servlet-Container) ohne diese Exception starten.
Wer allerdings zum Editieren der faces-config.xml die Faces-Console von James Holmes verwendet, wird feststellen, dass sich damit diese Datei nicht mehr grafisch editieren lässt. Abhilfe: auf eine anderen Editor umsteigen - allerdings habe ich bis jetzt noch keine wirkliche Alternative für die Faces-Console gefunden.
... link (0 Kommentare) ... comment
Friday, 10. August 2007
Compare JARs
javatux, 13:25h
Yesterday I had to problem to compare 2 different versions of jsse.jar. Clirr was the tool of my choice. Also the development seems to be stopped (the last version was from September 2005) the tool does exactly what I need.
... link (0 Kommentare) ... comment