This website uses cookies for visitor traffic analysis. By using the website, you agree with storing the cookies on your computer.More information

Oracle Forms' best friends...

...should be JVx and VisionX.

Our integration of JVx applications is now available.
We won't replace Forms with Java and don't say that Java is better than Forms. Of course, Forms is not dead and it will probably never die. But, Forms uses Java as client technology and why shouldn't we bring more Java to Forms?

If you search for Java and Forms all you will find are relatively simple components or PJCs, e.g. a JTable integration in your forms module. There are a lot of "ready-to-use" examples, but if you are not a Java pro, it will be hard to understand what happens.

I know that Forms needs a face lifting, but it is not a good idea to start from scratch. You should start pimpin' with some cool icons, colors and a nice background image. But if you need better usability, don't try to reinvent the wheel. You need more than modern controls like a JTable with sort-on-header. Do you know how you fill your table with data or how you transfer data from a remote database to your application within a 3-tier architecture?

What you need is a framework that is as powerful as forms, offers modern controls and solves communication problems. And it must be simple - should just work, because Forms simply works.
Oh... I forgot that the framework must work in Oracle Forms and without Forms. It must be a one-4-all solution.

If you think that this is impossible then you are wrong, because it works!

We married best of both worlds.

  • Use a modern table in your forms application and don't think about how you connect the table to your database. You get table headers and sort-on-header for free :)
  • Use layout managers for dynamic GUIs instead of fixed size GUIs.
  • Call a stored procedure on button click within your Java bean? No problem.
  • Use modern Look and Feels and pimp your forms GUI.
  • You need REST services? They are already implemented.

And you don't need different frameworks or tons of libraries. You need exactly one framework - JVx. It solves all your problems and with our Forms integration, it is possible to use your Java application within your Forms application without code changes.

We have some screenshots for you :)

Forms application with Java screen   Java screen without Forms

On the left side, you see the Forms application with exactly the same screens as in our Java application on the right side. We added a close button to the forms application, because it is Forms and you decide when you need Java and when standard Forms controls are better.

Oh... when you think you must migrate your Forms application to another technology - why do you think that? Modernize your existing Forms applications and if you decide to replace Forms, your Java screens are ready.

JVx beta releases?

Some of you asked me why no new beta releases are available.

The answer is that we don't build beta versions since we have our nightly builds. It is better to "release" daily instead of monthly. You get access to the latest features with the delay of one day.

You can download the nightly builds from here.

Flyspray as Ticket/Support System

Every (open source) software project needs a tool for bug reporting. Without such a tool it is hard because you need spreadsheets or mailing lists to manage todos. I think every developer knows why such tools are used ;-)

There are a lot of bug reporting tools like Bugzilla, JIRA, trac, Mantis, ... There are also a lot of project management tools with built-in ticket systems like Redmine.
It depends on your needs, if you develop open source or commercial software, the available money, ... which system is best suited.

We evaluated some systems and decided us for Flyspray.

Why?

We need a bug tracker that

  • is also a change request management tool
  • should be used from our customers (end-users)
  • should not have tons of configuration options
  • should be commercially useable
  • should be open source
  • should be easily adaptable
  • should allow custom styles/themes
  • should be template based
  • should not waste development time

Many points have been met from different tools, but the popular tools were too complex or heavy weight. Flyspray is different, because it focuses on the basics. One of the problems are custom styles/themes. It supports custom themes but it does not support custom site templates.
But it offers most features that a professional system should have, it is small and easily adaptable - compared to other tools. And the tool is not only for developers. An end-user can handle it.

We knew that the system needs some tweaks. We added support for

  • custom site templates (per project)
  • custom mail templates (text, html, ..)
  • enter officer for a ticket (group setting related), add effort (per ticket, per comment), add internal comments
  • added a switch that disables global priorities/severities,status, ...
  • set severity colors via database per project (instead of css)

This are some of our changes. We also fixed some layouting problems and created custom themes/templates.

If you are interested, look at our Flyspray installation:

SIB Visions Theme:
https://oss.sibvisions.com

Different style/site templates:
https://oss.sibvisions.com/index.php (WebUI)

If you are interested, leave a comment.

JVx nightly builds

We have posted that JVx quality reports are available.

Today, we also offer nightly JVx builds. The builds contain (nightly) in the Implementation-Title and Implementation-Version.

Don't use nightly build versions in production environments.

To use our nightly builds, go to

https://dev.sibvisions.com/jvx.nightly/

and click the Download link in the top menu.

Redmine "pimped"

Redmine is a very useful open source project management tool. It has great features and just works!

We use it for our internal quality management, as project documentation system and for time tracking. The time tracking feature is good but has some limitations. It is not possible to enter start/end time, only hours are possible.

Why we need start/end time?

The Austrian law defines that an official time recording, needs start and end time.

We found no plugin that offers the missing features, so we changed Redmine (2.0.3) to fulfill our needs. We added From/To input fields in the time tracking form, added a new permission for the time tracking module because only managers should see the time recordings of other users. A Developer or Reporter should not see time recordings of other users. It was not a lot of work, but it helps a lot :)

Here are some screenshots:

Time spent overview

Time spent overview

New link

New link

 
Spent time

Spent time

New permission

New permission

If you find our extensions useful or if you need the same features, leave us a comment.

JVx EE Master Thesis

Congratulations to Stefan Wurm for graduation!

He sent us his Master Thesis about JVx EE. It is a great documentation about the features and power of JVx EE. The document is in German.

Feel free to send us your comments.

The project is hosted on sourceforce and is available under Apache License 2.0.

Oracle Forms with JavaFx and Swing

I'm sure that some of you have already used custom swing controls in Forms applications to enrich them. But have you tried to use JavaFx together with your Forms application?

JavaFx has cool effects, animations, controls, css styling and much more.

If you enter 'oracle forms javafx' or similar, in your favourite search engine, you get no specific results. So I think it is time to integrate JavaFx to an Oracle Forms application, isnt't it?

- It is a world premiere -


First, a screenshot:

Oracle Forms and JavaFx

Oracle Forms and JavaFx

We used the source code from the official example, that integrates JavaFx in a Swing application.

The result of our integration is a screen that contains Swing and JavaFx controls. If you change a value in the table, the chart is updated immediately. It is really cool because the chart has nice transition effects.

You can combine rapid application development with modern controls and new development concepts.

Oracle Forms together with JVx/Swing (modernization)

The good old Oracle Forms UI does not look really cool. Of course, you can use nice icons and choose the right colors, but the controls are not fancy compared to swing controls.

If you try to to migrate from Oracle Forms to Java, wouldn't it be great to migrate one screen after the other. Or better, create new screens with Java and integrate them in your existing Oracle Forms application. Use both technologies as long as is necessary.

Don't think that you have to migrate the whole Oracle Forms application, migrate step by step. It is absolutely possible to use your new screens in your Oracle Forms aplication or as separate application without Forms. Save time, money and don't replace your existing Oracle Forms developers.

You would like to see how this can look like?


The first screenshot shows a standard Java swing application, with a simple master/detail and some editors:

JVx Swing UI

JVx Swing UI



The next screenshot shows the same screen (without source code changes) used in an Oracle Forms application:

Forms with Java screen

Forms with Java screen



You are right, it is great to embedd the same Java screen, but the Look and Feel is not very cool. Do you know that Java has some nice LaF's? Here is the same screen with Nimbus Look and Feel:

Oracle Forms Nimbus LaF

Oracle Forms Nimbus LaF

JVx EE Source Code is available

The scource code is online. Thanks to Stefan for his great work!

Check out the project page.

In the coming weeks we will finalize the documentation and build the binaries.

You find the JPA integration and a complete example application in the repository.
Have fun.

JVx EE

Our new project is created and we are preparing the source upload.

JVx EE

What is JVx EE?

It's the integration of JPA 2.0 in JVx. Create professional backend software with JVx and use your domain model which is already available in your Java EE based web application. With JVx EE you can use the configured EntityManager and JPA implementation of your web application. Reuse your existing DAOs or EAOs without changes in your application.

With JVx EE it is possible to create a standard JVx application that is connected to your domain model, e.g.:

JPAStorage jpaAddress = new JPAStorage(Address.class);
jpaAddress.setEntityManager(getEntityManager());
jpaAddress.open();

or with a custom EAO

CustomerEAO eaoCustomer = new CustomerEAO();
eaoCustomer.setEntityManager(getEntityManager());

JPAStorage jpaCustomer = new JPAStorage(Customer.class);
jpaCustomer.setEntityManager(getEntityManager());
jpaCustomer.getJPAAccess().setExternalEAO(eaoCustomer);
jpaCustomer.open();

Do you need a professional backend application for your existing web frontend? Use JVx and your problems are solved. You get all advantages of JavaEE in your JVx application.

JVx EE is licensed under Apache License 2.0.

Do you have any questions? Let me know.