Schlagwort-Archiv: java

JBoss AS gzip HTTP compression einschalten

HTTP Protokoll Komprimierung ist eine feine Sache. Dadurch lässt sich u.a. auch gut Bandbreite sparen und alle Bits sind schnell auf der gewünschten Empfängerseite. Zwar benötig der Empfänger auch etwas mehr Leistung um die Daten wieder zu dekompriemieren, jedoch packen dies auch die heutigen Smartphones problemlos.

JBoss AS 7.x

Einfach unter standalone/configuration/standalone.xml folgendes eintragen:

//...
</extensions>
 
<system-properties>
        <property name="org.apache.coyote.http11.Http11Protocol.COMPRESSION" value="on"/>
        <property name="org.apache.coyote.http11.Http11Protocol.COMPRESSION_MIME_TYPES" value="text/javascript,text/css,text/html"/>
</system-properties>
 
<management>
//...

JBoss AS 5.x

Um die gzip Komprimierung anzuschalten genügt es die server/YOUR_CONFIGURATION/jboss-web.deployer/server.xml zu modifizieren.

<Connector protocol="HTTP/1.1" port="8080" address="${jboss.bind.address}"
	maxThreads="200" acceptCount="50"
	connectionTimeout="60000"
	redirectPort="8443" minSpareThreads="5" maxSpareThreads="50"
	compression="on" compressionMinSize="256" 
	compressableMimeType="text/html,text/xml,text/css,text/javascript />

Standard mäßig ist die Komprimierung, mit dem Parameter off, ausgeschaltet.
Es gibt noch weiter compression Parameter wie zum Beispiel compressionMinSize und compressableMimeType. Mehr kann man hier nachlesen.

Happy config.

Oracle’s Java 7 auf Mac OS X

Seit Oktober 2010, mit der Übernahme Sun’s von Oracle, hat Apple beschlossen ihre eigene Java-Implementierung nicht mehr weiter entwickeln zu wollen. Vor ein paar Stunden hat Oracle nun das erste Java Release (7u4) für Mac OS veröffentlicht. Ich bin jetzt guter Hoffnung, dass für alle Systeme (Windows, Linux und Mac) von Oracle zeitgleich neue Versionen und damit auch fixes herauskommen.

Java 7 installieren

  1. Java 1.7 downloaden
  2. Heruntergeladene dmg Datei öffnen und den Installer durchklicken
  3. Das JDK sollte nun erfolgreich installiert sein
  4. Nun öffnet man die Java-Einstellungen, welche unter /Programme/Diesntprogramme liegen
  5. Den Eintrag Java 7 SE nach oben ziehen
  6. Jetzt kann man über das Terminal kontrollieren, ob alles funktioniert

Eclipse einrichten

  1. Eclipse öffnen
  2. Preferences (cmd + ,) öffnen
  3. Java -> Installed JREs wählen
  4. Add… Button drücken und MacOS X VM auswählen
  5. Im JRE Home Feld “/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home” eintragen
  6. Jetzt sollten die JRE system libraries gefühlt sein
  7. Dem JRE name noch beispielsweise “JDK 1.7″ eintragen und Finish drücken
  8. Jetzt kann man das JDK 1.7 wählen

Happy Coding.

Deklaration von Java Array’s

Gestern habe ich das erste mal die Deklaration von einem Java Array in dieser Form gesehen.

int foo[];

Bis dato kannte ich lewiglich die ‘klassische’ Form.

int[] foo, bar;

Hier gibt es jedoch Unterschiede. Die Klammern können Teil des Typs oder der Variable sein. Sind sie Teil des Typs, so sind alle deklarierten Variablen ein Array.

int[] foo_1d, foo_2d[], foo_3d[][];
// the same as
int bar_1d[], bar_2d[][], bar_3d[][][];

Tricky ist folgender Fall.

int []foo, bar;

Hier ist bar kein int sondern ein int-Feld. Der Compiler verweigern hier eine Zuweisung.

bar = 123;

Also nicht zu schnell auf der Tastatur tippen. Somit lieber den guten Stil wählen und die Deklaration direkt an den Typ setzen.
Happy coding.

BerlinExpertDays 2012 (#bedcon) – join the talk

An event around the Java world.
Download/Link: bed-con.org 2012.ics (update day 1 & 2)

My favorite talks 2012-03-29 …

  1. Was tut ein guter Software Architekt? – Eberhard Wolff
  2. Darf’s ein wenig größer sein – Architekturmuster für hochskalierbare Systeme – Uwe Friedrichsen
  3. Matt in drei Iterationen. Lebendiger Architekturentwurf am Beispiel einer Schach-Engine – Stefan Zörner

… and 2012-03-30 …

  1. Scala – eine rundum Einführung – Felix Müller
  2. Blazing fast! JBoss 7 – Sascha Möllering
  3. Multi-core für jedermann mit GPars – Dierk König
  4. JavaScript in the Cloud – Jan Jongboom

Thanks to all speakers, visitors and the organizers.

NetBeans keyboard shortcuts

Bis dato hatte ich ausschließlich mit der Eclipse IDE programmiert. In der Hochschule wird jedoch NetBeans 7 eingesetzt.

NetBeans 7 ist gar nicht mal so übel. Jedoch sind die Tastaturkürzel (shortcuts) anders. Das macht das Leben nicht gerade einfacher. Darum habe ich mich mal auf die Suche nach einer Keyboard-Shortcut-Übersicht gemacht.

  • Using NetBeans IDE on Mac OS X
  • Wenn du wissen möchtest welche keyboard shortcuts es alles in denier NetBeans Version gibt, dann schau unter Tools -> Options -> Keymap nach.
  • Meine Favoriten:

    Shift + Esc Toggle Work-space Maximize/Minimize
    Ctrl+E Delete current line

    Quelle: Top 10 NetBeans IDE Keyboard Shortcuts I use the most

    Happy coding.

    Podcasts

    Seit ungefähr fünf Jahren höre ich nun schon Podcasts. Diese ganze Sache hat ca. ein Jahren vorher mit dem Chaosradio (@ Holger Klein) auf Fritz angefangen. Dadurch bin ich auf die gesamte Szene rund um Tim Pritlove und dem Chaos Computer Club (ccc) aufmerksam geworden. Da mich der ganze Tech-Staff interessiert. Es sollte nicht lange dauern und der Chaosradio Express wurde geboren.
    Das waren noch Zeiten, Pionierzeiten so zu sagen. Es wusste kaum einer, was ein Podcast ist und noch weniger haben einen gehört.
    Meine ersten Podcasts waren Chaosradio Express, Bits und So und Schlaflos in München. Sie existieren ja erfreulicherweise bis heute. In diesem Zeitraum sind natürlich auch einige Podcasts wieder von der Oberfläche verschwunden.
    Ich kann mir schon lange nicht mehr vorstellen, auf dem Weg zur Arbeit (damals Schule und Zivildienst) und beim Einkaufen nichts auf den Ohren zu haben.
    Die Zeiten haben sich gewaltig geändert. Neben dem wachsenden Umfang, Qualität und Angebot, hat sich der Video Podcast etabliert.
    Meines Erachtens ist es eine exzellente Variante auf dem laufenden zu bleiben und sich weiter zu bilden. Den wer will sich von der Flimmerkiste berieseln lassen, wenn man selbst seinen Inhalt aussuchen und produzieren kann?

    Hier noch eine Liste von hörenswerten Podcasts:

    Hört und schaut mal rein.

    Extreme Lightweight Architectures mit Java EE 6

    Ich hätte doch wieder früher mit dem Bloggen anfangen sollen…
    Am 10. September 2009 war ich auf der Jug-Saxony (Java User Group Sachsen | Google Group | Software Saxony). Es hatten sich eine ganze Menge Leute. Ich war überrascht, aber wenn schon mal Adam Bien in der Stadt ist.. Er hatte einen Vortag über “Extreme Lightweight Architectures (XLAs :-) ) mit Java EE 6 und insbesondere EJB 3.1″ gehalten. War sehr interessant muss ich sagen! Jedoch hatte er ein arg flotten Informationsschub.

    Hier noch mal einmal die Vor-Informationen…

    Informationen zum Thema:
    EJB 3.1 ermöglicht eine direkte Umsetzung der Architekturprinzipien auf den Source-code. Man kann hier allerdings auch zu ungewöhnlichen Mitteln wie z.B. gänzlicher Verzicht auf Schnittstellen oder das Deployment innerhalb eines WARs greifen. In dieser Session werden leichtgewichtige und minimalistische Architekturen am Beispiel der EJB 3.1, JSR-330 (Java Contexts und Dependency Injection) und REST diskutiert. Dabei werden pragmatische Ansätze wie z.B. das Entity Control Boundary Pattern diskutiert und mit Code aus der Praxis veranschaulicht. Fragen wie: Was bringt Convention Over Configuration? Werden Schnittstellen noch benötigt? Sind DAOs überflüssig? Brauchen wir DTOs? Wie teste ich EJBs außerhalb des Containers? Lohnt sich noch der Einsatz von reinen “POJOs”?, sowie alle Fragen der Teilnehmer werden während der Session beantwortet. Die Veranstaltung ist open-ended – d.h. wir hören erst auf, wenn alle Fragen beantwortet und im best-case auscodiert wurden..

    In dem Vortrag ging es darum, dass viele Vorurteile gegenüber EJBs (3.0) haben bzw. die noch aus den 2.x Zeiten stammen. Hier nur Auszüge wie Schwergewichtigkeit und schwere Integration/Migration. Dies ist aber nicht nicht so, wie er uns anhand von Theorie und Code snippets aufzeigte.
    Der Grund für die Vorurteile gegenüber EJB 3.0 und 3.1 sind, aus seiner Sicht, die Konstrukte des Overengineerings der Architekten zu suchen. Das bedeutet das Ziel klar im Auge zu haben und nur soviel Flexibilität wie möglich hineinzubringen. Denn über 90% dieser Flexibilität und damit auch Komplexität, werden bzw. wurden nie genutzt.
    Ziel seiner Theorie und Code Pattern war verständlichen und leichtgewichtigen Code zu schreiben, der sich ohne großen Aufwand erweitern lässt und somit die alltägliche Arbeiten nicht beeinträchtigt.
    Das Motto und immer wieder zu hören…

    Keep it simple

    Folien: Extreme Lightweight Architectures (Adam Bien)
    Projekt: JavaEE Patterns

    Links