pfSense 2.3 + APU2C4 + Temperature

Post to Twitter

With current pfSense 2.3.2 and APU2C4 it's not possible to read the CPU temperature of. The problem isn't new but it's not solved in official images.

I found a solution for the problem in this forum (Thanks to Stephan).

It wasn't tricky, but if you want the short story:

  1. Download the changed kernel module
  2. Extract the archive and copy the amdtemp.ko file to your box, to /root
  3. Execute following commands:
    kldunload amdtemp
    cp /root/amdtemp.ko /boot/kernel/
    kldload /boot/kernel/amdtemp.ko

After this steps, you'll see the current temperature in the Dashboard view.

HANA Express and VisionX

Post to Twitter

HANA Express is available for some days. HANA is the In-Memory Database solution of SAP.

What is HANA Express?

SAP HANA, express edition is a streamlined version of SAP HANA that can run on laptops and other resource-constrained hosts, such as a cloud-hosted virtual machine, for free up to 32G of memory use.

reference: https://go.sap.com/developer/topics/sap-hana-express.html

We wrote an article about our HANA experiments in December 2014. We had a test account for the online HANA. Our tests were successful but we weren't convinced from the system because it was slow and had many JDBC driver problems. Our bug reports were never answered.

But we never give up and the Express edition was interesting for us. We thought it might be worth some hours for our R&D team. The result is awesome!

We think that VisionX is the best tool for application development with HANA databases. Your web application is ready in 1 minute without coding!

Some details?

The installation of the Express edition wasn't tricky. The documentation is straight forward. The database is up and running in some minutes.

We had some problems with JDBC driver because it wasn't available as separate download and we didn't find any documentation. But it was part of the HANA plugin for Eclipse. Not that easy, but it was part of a jar file: com.sap.ndb.studio.jdbc_2.3.8.jar.

The next tricky thing was the JDBC connect string: jdbc:sap://hxehost:30013/?currentschema=System. The username was SYSTEM.

With all this information, it was super easy to create an application with VisionX for HANA express. We guess it makes no difference if you use HANA or HANA express.

How it works? Check the video. It's from 2014 but still impressive.

The current JDBC driver works much better than in 2014 and the performance of the database is great - compared to 2014.

If you're interested in more details, write a comment ;-)

Vaadin 7.7

Post to Twitter

Vaadin 7.7.0 is out since 2016-08-24 and 7.7.1 since 2016-09-14.

We're happy to announce that our vaadin UI is based on vaadin 7.7.1 since 2016-09-16. Use our nightly builds or checkout the repository.

And the maven snapshots:

<dependency>
    <groupId>com.sibvisions.vaadin</groupId>
    <artifactId>jvxvaadin-client</artifactId>
    <version>1.5-SNAPSHOT</version>
</dependency>

<dependency>
    <groupId>com.sibvisions.vaadin</groupId>
    <artifactId>jvxvaadin-server</artifactId>
    <version>1.5-SNAPSHOT</version>
</dependency>

<dependency>
    <groupId>com.sibvisions.vaadin</groupId>
    <artifactId>jvxvaadin-themes</artifactId>
    <version>1.5-SNAPSHOT</version>
</dependency>

Your feedback is appreciated :)

Quality check AddOn for VisionX

Post to Twitter

We have a brand new AddOn for you! It's simply awesome.

Imagine you have a large application with many screens and life-cycle objects. The deployent date is tomorrow. All manual tests today were successful. You leave the office and your colleague updates the database and doesn't tell you something about the changes. The deployment could be a destroyment :) without retesting!

Sure, a manual test of application functionality is great and also automatic UI tests are helpful. But both tests need some time and a test tool for automatic UI tests. We had the simple idea that a great improvement would be an automatic screen and life-cycle object test by an ANT task.

You could reduce error sources if it's guaranteed that a screen can be opened at runtime! This means that the object in the life-cycle object will work as well. But it's also possible that you have some database access objects in the life-cycle object, without GUI references, e.g. for Reporting purposes. Such objects can't be found with simple screen open tests.

Our idea was that we could check all database objects from your life-cycle objects automatically and we could start the application in a headless mode to open/close your screens. Both checks could be executed as ANT task before war file creation. Sounds interesting?

We have an AddOn with above features for VisionX.

Here are some screenshots of the build results:

Project view with ANT results

Project view with ANT results

The life-cycle object MasterData contains the DBStorage errorData. The storage uses the write-back table ERRORDATA wich isn't available in the database. The quality check shows:

Found LCO: com.sibvisions.apps.example1.screens.MasterData
        -> masterdata [OK] => [ID, FIRSTNAME, LASTNAME, DOB]
        -> errorData [ERROR: Meta data couldn't load from database! - SELECT * FROM ERRORDATA
           WHERE 1=2]

Only the ANT output:

Quality checks ANT results

Quality checks ANT results

The life-cycle object had an error, but the MasterDataWorkScreen works because errorData wasn't used while opening the screen.

The screens SimpleErrorWorkScreen and ShowErrorWorkScreen can't be opened because initialization failed. The life-cycle objects work without problems!

The checks are fast and can be executed without GUI. The application will be started with headless UI and it acts like any other JVx application with all supported features.

The AddOn is a massive improvement for your quality requirements.

Mavenized everything

Post to Twitter

We're happy to announce that all our projects are available as Maven artifacts.
Not all of our projects are public and aren't available in public Maven repositories, but we offer our own nexus for all this projects.

Which projects aren't public?

  • Vaadin Charts UI
  • Vaadin responsive application frame
  • Application client
  • Application server
  • Application Services
  • JavaFX mobile UI
  • Oracle Forms extension

We provide snapshot and release artifacts. All other - public - projects are available via maven central as release or snapshot artifacts.

  • JVx
  • JVx EE
  • Vaadin UI
  • JavaFX UI
  • Headless UI
  • Online help
  • JVx mobile

Our private Maven repository is available on a subscription basis. This doesn't mean that our private projects aren't open source projects, but we don't offer snapshot or release artifacts for them!

ProjX/Applications API changes

Post to Twitter

We'll chang the API of ProjX applications for some listeners. The changes are available in our nightly/weekly builds and in our repository. Please be sure to test your applications because generic listeners won't throw an exception at compile time, only at runtime.

IBeforeOpenWorkScreenListener

public void beforeOpenWorkScreen(ProjX pApplication, String pClassName, Modality pModality, AbstractConnection pConnection) throws Throwable;

to

public void beforeOpenWorkScreen(WorkScreenEvent pEvent) throws Throwable;

IAfterOpenWorkScreenListener

public void afterOpenWorkScreen(ProjX pApplication, IWorkScreen pScreen) throws Throwable;

to

public void afterOpenWorkScreen(WorkScreenEvent pEvent) throws Throwable;

IBeforeCloseWorkScreenListener

public void beforeCloseWorkScreen(ProjX pApplication, IWorkScreen pScreen) throws Throwable;

to

public void beforeCloseWorkScreen(WorkScreenEvent pEvent) throws Throwable;

IAfterCloseWorkScreenListener

public void afterCloseWorkScreen(ProjX pApplication, IWorkScreen pScreen) throws Throwable;

to

public void afterCloseWorkScreen(WorkScreenEvent pEvent) throws Throwable

IOpenWorkScreenExceptionListener

public void openWorkScreenException(ProjX pApplication, String pClassName, Modality pModality, Throwable pCause) throws Throwable;

to

public void openWorkScreenException(WorkScreenExceptionEvent pEvent) throws Throwable;

IVetoOpenWorkScreenListener

public void vetoOpenWorkScreen(ProjX pApplication, String pClassName, Modality pModality, Map<String, Object> pParameter) throws Exception;

to

public void vetoOpenWorkScreen(WorkScreenEvent pEvent) throws Exception;

Monitoring AddOn for VisionX

Post to Twitter

Our Monitoring tool for JVx applications is very useful for application maintenance but also for application development. It safes time, problems and costs. The tool itself is a standalone JVx application and it connects to another JVx application which was configured with the monitoring plugin. It's not a hard job to configure a JVx application for monitoring, but it's boring.

We now have a really great VisionX AddOn which does all the boring work for you. It configures your applications for monitoring and makes it possible to monitor your applications during development time. It's very helpful to find bottlenecks or to do tuning before deployment :)

The plugin comes with an additional awesome Feature, which isn't available without the AddOn. It's the maintenance module. This module allows you to switch your application(s) in maintenance mode. You could use the maintenance mode to do manual database updates, config updates or simple health checks.

We have a short demo video which shows how it works:

VisionX Monitoring AddOn

The AddOn will be available in our Solution store, but not for free. The monitoring tool needs a separate license.

Maven central: JVx.web snapshots

Post to Twitter

Our JVx headless UI (aka JVx.web) implementation is available as maven snapshot:

<dependency>  
  <groupId>com.sibvisions.web</groupId>    
  <artifactId>headless</artifactId>  
  <version>1.2-SNAPSHOT</version>
</dependency>

Don't forget the snapshot repository:

<repository>  
  <id>sonatype-nexus-snapshots</id>    
  <name>Sonatype Snapshots</name>  
  <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
</repository>

Maven central: JVx.mobile snapshots

Post to Twitter

Our JVx mobile project is available as maven snapshot:

<dependency>  
  <groupId>com.sibvisions.mobile</groupId>    
  <artifactId>mobile-server</artifactId>  
  <version>1.0.1-SNAPSHOT</version>
</dependency>

and only the API

<dependency>  
  <groupId>com.sibvisions.mobile</groupId>    
  <artifactId>mobile-api</artifactId>  
  <version>1.0.1-SNAPSHOT</version>
</dependency>

Don't forget the snapshot repository:

<repository>  
  <id>sonatype-nexus-snapshots</id>    
  <name>Sonatype Snapshots</name>  
  <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
</repository>

Maven central: JavaFX UI snapshots

Post to Twitter

Our JavaFX UI for JVx is available as maven snapshot:

<dependency>  
  <groupId>com.sibvisions.jvx</groupId>    
  <artifactId>jvxfx</artifactId>  
  <version>1.2-SNAPSHOT</version>
</dependency>

or only JavaFX extensions

<dependency>  
  <groupId>com.sibvisions.jvx</groupId>    
  <artifactId>jfxtensions</artifactId>  
  <version>1.2-SNAPSHOT</version>
</dependency>

and don't forget the snapshot repository:

<repository>  
  <id>sonatype-nexus-snapshots</id>    
  <name>Sonatype Snapshots</name>  
  <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
</repository>