Archiv

Artikel Tagged ‘Java’

PDF Dokument erstellen und anzeigen mit Java

6. August 2010 1 Kommentar

PDF’s kann man in Java relativ einfach erstellen, nur benötigt man dazu ein externes Library. Nach dem Erstellen kann man das Anzeigen der Standard-Anwendung überlassen oder aber man stellt die PDF mit einem weiteren Library in der eigenen Anwendung dar. Man kann sich also z.B. auch einen eigenen Adobe Acrobat bauen. Falls man das Dokument dann auch noch verschlüsseln möchte, wird ein drittes Library fällig.

Hier die benötigten Libs um das folgende Beispiel ausführen zu können:

Mehr…

JIDE Common Layer – Open Source Java Library

17. Juni 2010 Keine Kommentare

Seit längerer Zeit schon suche / programmiere ich eine AutoCompleteComboBox Komponente für ein Java Projekt und noch diverse andere Klassen die man einfach für ein solides Projekt benötigt, und was passiert? Heute stoße ich dann auf JIDE Common Layer und plötzlich kann ich alle meine Entwürfe wegschmeißen, und wieso? Weil JIDE alles hat was ich brauche – und nicht nur das, JIDE hat sogar wesentlich mehr als ich brauche und ist noch dazu sehr professionell programmiert und open source!

JIDE Common Layer ist eine Java SWING Library die wirklich einige interessante Komponenten zu bieten hat. Und das geilste ist, die läuft unter der GPLicense! Ich empfehle euch dringend die Webstart Variante der Demo auszuprobieren. Da könnt ihr dann alle Komponenten die Teil des Common Layers sind testen und genau unter die Lupe nehmen (alle Komponenten die auf der linken Seite bei Demos unter dem Punkt JIDE Common Layer stehen, sind open source). Die fertig kompilierte Library ist etwas über ein MB groß und kann, zusammen mit dem Source Code, hier heruntergeladen werden.

Falls sich jemand für das Subversion Repository interessiert:

Repo: https://jide-oss.dev.java.net/svn/jide-oss/trunk

User: guest

Passwort: (es wird kein Passwort benötigt)

EDIT 02.07.10

Ich muss hier einfach nochmal ein paar Screenshots von den Komponenten veröffentlichen damit man sich vorstellen kann was einem da geboten wird :)

Mehr…

yEd Graph Editor – Ultimatives Ding für Diagramme

16. Juni 2010 3 Kommentare

yEd ist ein freier Editor für Diagramme der wirklich einiges auf Lager hat! Alle Objekte lassen sich auf Wunsch automatisch anordnen (es gibt verschiedene Layouts), exportieren kann man unter anderem auch nach .SVG, UML Komponenten stehen zur Vefügung usw. Macht wirklich Spaß damit zu arbeiten. Vor allem ist es ziemlich egal was für ein Diagramm man erstellen möchte. yEd ist wirklich flexibel und schafft fast alles – egal ob Klassendiagramm, Swimlanes, Tabellen  oder irgend eine andere Visualisierung, es geht. Erinnert mich etwas an XMind, nur hat man eben mehr Freiheiten.

Ist zu 100% in Java geschrieben, Freeware und gibt es für Windows, Linux und MacOS. Wer es erst ausprobieren will, kann auch die WebStart Version nutzen.

UML Diagramme kann man natürlich auch erstellen

Mehr…

KategorienJava, Linux, Software Tags: , , , ,

Java Look & Feel

23. April 2010 2 Kommentare

Ich war auf der Suche nach einem Look & Feel für eine Java Anwendung und bin dabei auf Substance gestoßen. Ein außerordentlich gutes LaF. Man kann aus verschiedenen Skins und Darstellungsarten wählen und als Plugin gibt es sogar einen Nachbau von Microsofts Ribbon User Inteface :D

Java war noch nie so schön wie mit Substance und falls ihr das LaF auch für eure Anwendung nutzen wollt, dann ladet euch das Substance 6.0 library und das Trident animation library herunter. Beide werden benötigt um das LaF richtig darzustellen.

Und falls ihr interessiert seit was sich sonst noch so in der Welt der Java Skins tut, dann interessiert euch vielleicht auch der Entwurf für das kommende Nimbus LaF oder vielleicht das von Nimbus inspirierte SeaGlass das derzeit in der Entwicklung ist. Falls ihr die LaFs erst einmal begutachten wollt:

Und falls ihr richtig durchgeknallt seit: Napkin LaF

Hier noch ein Screen vom Substance LaF:

KategorienJava Tags: , , , ,

TopCoder UMLTool 1.2.4

18. März 2010 1 Kommentar

TopCoder ist eine Seite auf der sich “Super Programmierer” treffen um vorgegebene Wettbewerbe über sich ergehen zu lassen – auch die CIA veranstaltet dort Wettbewerbe und stellt anschließend den glücklichen Gewinnern lukrative Jobs in Aussicht.

Jedenfalls hatte die Community irgendwann mal Bedarf an einem Code Generation Tool und hat kurzer Hand selbst eins geschrieben. Ihr könnt damit Klassendiagramme, Use Case Diagramme, Sequenzdiagramme und Aktivitätsdiagramme erstellen und daraus dann Java oder C# Code generieren. Solche Tools gibt es natürlich mehrere (auch open source) aber an dem Tool hier gefällt mir dass es wirklich nur auf die wichtigsten Diagrammarten beschränkt ist und keinen Schnickschnack anbietet den eh keiner braucht. Läuft auf allen Plattformen.

Kostenloses Buch zur Android-Programmierung

17. März 2010 2 Kommentare

352 Seiten, kostenlos und richtet sich an Java-Entwickler:

Android – Grundlagen und Programmierung

Via heise.de

KategorienProgrammieren Tags: , , ,

Präsentation über das XMPProtokoll (== Jabber)

15. Dezember 2009 6 Kommentare

Ich musste letzte Woche eine einstündige Präsentation zum XMPProtokoll halten. Wie  gesagt ist XMPP ein Protokoll und bildet die Grundlage für Jabber (rein technisch betrachtet stimmt das jetzt gar nicht aber den meisten wird das mehr sagen als die Tatsache dass Jabber eine Open-Source-Community ist). Wer sich also mal mehr über das Thema informieren will, auch eine Präsentation halten muss oder vielleicht einen eigenen Server aufstellen oder Client programmieren will, den wird das vielleicht interessieren.

Es ist jedenfalls ein sehr interessantes Thema und wenn man etwas davon versteht stellt es auch kein Problem dar seine eigene Kommunikationsinfrastruktur aufzubauen – was ziemlich cool ist wenn man bedenkt dass man ein eigenes Instant Messaging Netzwerk nur für seine Freunde realisieren kann :D

Die Präsentation wird euch nicht wirklich an allen Punkten klar sein wenn ihr euch die einfach mal eben reinzieht. Das liegt zum großen Teil daran, dass ich ursprünglich die Slides auch erkläre (und mich gibt’s jetzt leider nicht dazu ;) ). Aus diesem Grund habe ich dann wenigstens an den wichtigsten Stellen Kommentare eingefügt. Ein kleines Codebeispiel zum senden und empfangen von Nachrichten in Java ist auch vorhanden. Zu dem Code ist noch zu sagen dass ihr dazu zwei Libraries benötigt die beide Teil von SMACK sind – SMACK ist eine Java API für XMPP (Jabber).

UPDATE: Eine erweiterte Umsetzung in Ruby gibt es übrigens in einem interessanten Beitrag von Bernhard Häussner.

Hier dann mal meine Präsentation XMPP.pptx und hier der Source für die Java Klasse:

import org.jivesoftware.smack.Chat;
import org.jivesoftware.smack.ChatManager;
import org.jivesoftware.smack.ConnectionConfiguration;
import org.jivesoftware.smack.MessageListener;
import org.jivesoftware.smack.SASLAuthentication;
import org.jivesoftware.smack.XMPPConnection;
import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smack.packet.Message;
/**
 * Sendet eine Nachricht und ermöglicht das Empfangen von Nachrichten. Wenn die
 * übertagene Nachricht == "quit" ist, wird die Verbindung beendet.
 *
 * @author David Strohmayer
 *
 */
public class SendMessageTest {
	private XMPPConnection connection;
 
	public static void main(String[] args) {
		new SendMessageTest();
	}
 
	public SendMessageTest() {
		connect();
		createChat();
	}
 
	private void connect() {
 
		// Hier müsst ihr euren Server eintragen (z.B.: "jabber.org")
		ConnectionConfiguration config = new ConnectionConfiguration("euerServer", 5222);
		config.setSASLAuthenticationEnabled(true);
 
		connection = new XMPPConnection(config);
 
		try {
 
			System.out.println("Connecting...");
			connection.connect();
			SASLAuthentication.supportSASLMechanism("PLAIN", 0);
 
			System.out.println("Logging in...");
			// Die Resource müsst ihr nicht angeben aber ich würde eine
			// eintragen. Und zwar eine die ihr noch nicht verwendet.
			// Mit 'eureId' ist hier nur der name ohne Domain(!) gemeint. Also bei
			// "david.strohmayer@jabber.ccc.de", wäre das "david.strohmayer"
			connection.login("eureId", "euerPasswort", "eureResource");
 
		} catch (XMPPException e) {
			e.printStackTrace();
		}
	}
 
	private void createChat() {
		ChatManager chatmanager = connection.getChatManager();
		// Hier kommt eure komplette JID rein - am besten ohne Resource.
		// Z.B.: david.strohmayer@jabber.ccc.de
		Chat chat = chatmanager.createChat("eureId@dieDomain.de", new MessageListener() {
					public void processMessage(Chat chat, Message message) {
 
						if (message.getBody().equalsIgnoreCase("quit")) {
							System.out.println("Disconnecting...");
							connection.disconnect();
						} else {
							System.out.println("Received message: " + message.getBody());
						}
					}
				});
		try {
 
			System.out.println("Sending Message...");
			chat.sendMessage("Zefix!");
			while(true);
 
		} catch (XMPPException e) {
			System.err.println("Error delivering message...");
		}
	}
}

Kostenlose IT-Bücher zum downloaden

5. Dezember 2009 4 Kommentare

Ihr wollt lernen zu programmieren habt aber kein Interesse daran euch einen dicken Schinken für 40€ zum lesen zu besorgen? Da kann euch Galileo Computing bestimmt weiter helfen. Deren Openbook-Reihe ist einfach genial. Ihr könnt euch insgesamt 25(!) Bücher, die es auch in gedruckter Form gibt, kostenlos herunterladen oder aber gleich online lesen.

Die Bücher richten sich zwar zum Großteil an Entwickler aber auch für den ein oder anderen “normalen” Leser ist etwas dabei. Hier die Liste der Bücher in der Übersicht:

Auf der Übersichtsseite (den Link gibt es ganz oben) könnt ihr das jeweilige Buch in einem ZIP File herunterladen oder aber ihr lest es wie gesagt online. Die Dateigröße pro Buch variiert dabei übrigens von unter 3 MB bis über 80 MB :)

UPDATE: Wer auf den Geschmack gekommen ist und noch mehr Bücher herunterladen will, der kann das auf dem Blog von Henry Schmid machen.

Physics Simulation mit Java

29. November 2009 Keine Kommentare

Als ich gestern von meinem bayerischen Kollegen Rafael den Link zu MyPhysicyLab bekommen habe (danke nochmal dafür), war ich schon sehr begeistert über die interaktiven physikalischen Simulationen die man auf der Webseite in Form von Applets findet. Nicht dass ich gedacht hätte es wäre nicht machbar aber das muss man in dieser Form erst einmal runterprogrammieren…

Ihr findet auf der Seite nicht nur die Applets mit den verschiedenen physikalischen Simulationen, sondern der Autor (der übrigens leitender Software Entwickler in Macromedias jungen Jahren war und “Adobe Director” mitentwickelt hat – das freilich damals noch anders hieß) stellt sogar den kompletten Source Code der Simulationen zum Download bereit! Das ist schon ein ziemlicher Hammer und entlockt mir ein fröhliches “VIELEN DANK!”

Übrigens ebenfalls vom gleichen Autor kommt FunctionLab das eine Art grafischen Taschenrechner für Funktionen darstellt und DifferenceEqLab das selbiges für Gleichungen bietet. Beides ist wiederum als ausführbare JAR downloadbar.

KategorienJava Tags: , ,