Archiv

Archiv für die Kategorie ‘Programmieren’

Allowed Characters for Javascript Variables

20. Oktober 2011 Keine Kommentare

I am playing with the JDK Javascript API (JSR 223) and I wanted to check out the replacement of variables in a String. Then I suddenly got this error:

javax.script.ScriptException: sun.org.mozilla.javascript.internal.EvaluatorException: missing ; before statement (<Unknown source>#1) in <Unknown source> at line number 1

After some reseach I found out, that my variables did contain invalid characters in my case the variable contained a -.


So the Regular Expression for valid Javascript variable names is:

[a-zA-Z_$][0-9a-zA-Z_$]*

It is also possible to use any unicode characters for variables, but of course this is not recommended.

Time consuming processes with Seam, Richfaces a4j:poll and Quartz

28. September 2011 1 Kommentar

Today I had a hard time implementing time-consuming processes with AJAX status updates. I stripped down everything to a minimal working example. The technologies used in this example are

  • Seam 2.2.2
  • Richfaces 3.3
  • Quartz 1.6

So here is what I wanted to achieve: The user of my application should click a button and in the background, a long running process should do some database stuff. Since this could take a while, I wanted to show some progress to the user. I did not want a progress bar, but I wanted to display some text to the user, depending on what the long-running tasks current status was.

I stripped it all down to an minimal example, which starts a long running process (huge for loop which generates random UUIDs) when a button is clicked and displays the current UUID to the user. With this basic example I hope you can get the ideas behind the a4j:poll component and how to do asynchronous long-running tasks with Seam. I must admit, that I was heavily(!) inspired by Andrey Chorniys blog post Show dynamic progress of time-consuming process in Seam/RichFaces where I shamelessly stole code and adapted it to my needs.

Here are the neccessary steps to get started

Mehr…

In-Memory Database for Seam TestNG Tests

28. Juli 2011 2 Kommentare

Today I struggled with getting my TestNG Integration Tests working in my Seam 2 project. It’s not a very smart idea to use the production/development database for database tests and here’s why:

1. It is damn slow
2. We want to separate “real”/fake data from unit test data.
3. Under normal circumstances we want a clean database or a database with predefined data (see )
4. We want the unit tests to run everywhere. It should not matter if we have a Windows machine, a Linux Buildserver or a MacOSX. It should just work. Oh and I forgot. We even want it to work without Internet Connection.
5. …

So I decided to use HSQLDB for my Unit tests.

The first barrier was getting TestNG working. Mehr…

KategorienJBoss Seam Tags: , ,

Brand new useful Netbeans Code Templates

24. Dezember 2010 Keine Kommentare

I am using Netbeans for a few weeks now and I have to admit, that I really enjoy this IDE. But my happiness with the IDE is not what I want to blog about today :)

Programmers are (or should be) lazy. We do not want to write the same code again and again. Fortunately every sophisticated IDE has some kind of Code Template mechanism, so does Netbeans. Here are some of my created Templates which I think other people could find it as useful as I do:
Mehr…

Seam Attachment wird nicht an Email angehängt

15. Oktober 2010 Keine Kommentare

JBoss Seam bietet eine wirklich tolle Unterstützung für das Versenden von E-Mails an. Falls jemand nicht weiß wie das funktioniert, hier ist die Referenz dazu.

Wir wollten eine PDF an eine Mail anhängen, die Mail wurde jedoch ohne das Attachment versendet. Hier die Lösung:
Mehr…

KategorienJBoss Seam Tags:

Maven Projekt mit JDK 1.6 kompilieren

4. September 2010 1 Kommentar

Die Standard Compiler Einstellung für Maven ist das JDK 1.4 . Da sogar Java 1.5 das End of Life schon lange erreicht hat, wollen die meisten ihr Projekt wohl mit Java 1.6 kompilieren.

Um Maven dazu zu bringen das JDK 1.6 zum kompilieren, benutzt man einfach das maven-compiler-plugin. Hier ein Beispiel aus meiner pom.xml:

Mehr…

KategorienMaven, Tipps und Tricks Tags:

Upgrade Seam Project froom 2.2.1.CR1 to 2.2.1CR2

29. August 2010 Keine Kommentare

We had a Problem with JBoss Seam 2.2.1.CR1 Logger. We were not able to log with parameters. (This is a known bug: https://jira.jboss.org/browse/JBSEAM-4606 )

I was looking for a tutorial which covers upgrading Seam, but I did not find any. So this is my solution how to upgrade from Seam 2.2.1.CR1 to Seam 2.2.1.CR2:

It is kind of a trivial job, because in normal case you just have to replace libraries. Here is a step to step tutorial:

Mehr…

KategorienJBoss Seam Tags: , , ,

Add JBoss Repository to Nexus

JBoss changed its Repository URL, so our Nexus Repository Manager was not able to download the newest Hibernate Version (3.5.1-Final). Although the old JBoss Repository is readable and searchable we had problems downloading the .jar files. We changed the URL to the new JBoss Repository URL and everything worked fine again.

This is the new URL:

https://repository.jboss.org/nexus/content/groups/public

KategorienMaven Tags: , , ,

Set author tag automatically to the right name in Eclipse

25. März 2010 Keine Kommentare

If you want to set the @author tag via Code Templates, you probably want to configure the name behind the tag. By default Eclipse takes your account name of your OS. If you want to set another name, you have to edit the eclipse.ini and add the following line:

-Duser.name=Name

Now your name will appear behind the tag.

KategorienEclipse Tags:

[m2eclipse] Start Eclipse with JDK instead of JRE

24. März 2010 5 Kommentare

If you install the m2eclipse Plugin for the  Maven Integration in Eclipse, this Error could possibly be shown in the Eclipse console:

Eclipse is running in a JRE, but a JDK is required
Some Maven plugins may not work when importing projects or updating source folders.

If you have this issue, you should edit your eclipse.ini and add the following lines (on a Windows System) :

-vm
C:\path\to\JDK\bin\javaw.exe

Now your Eclipse should use the JDK to run with and the m2eclipse plugin should be happy.

KategorienEclipse, Maven Tags: , , ,