hello,

i'm trying to use an dbGateway in Yawl and have some problems to use them.

First, is it correct that i have only to modify the
MyExternalDBGatewayImpl.java
and put it in the tomcat folder?

Because i've tried to put the MyExternalDBGatewayImpl.class in the folder, but i did'nt see in the editor any DBGateway...

So i have some more question, when i will using my own Gateway, i just have to modify the methods and to declare the variables with the same name in the database(postgres)?

By the way, i've installed the enterpise version of Yawl 2.2 and i'm using Java 7(32-Bit).

thanks for answearing

fmannhardt

Thu, 05/16/2013 - 13:34

Did you follow this tutorial (http://www.yaug.org/node/45)?

The important part is that you place your implementation of AbstractExternalDBGateway into the correct folder (at least in YAWL 2.2) that is as mentioned in the tutorial:

 

When the class is compiled, you will need to place it in the correct folder of the YAWL-installation, in my case "[YAWL-dir]\engine\apache-tomcat-6.0.18\webapps\yawl\WEB-INF\classes\org\yawlfoundation\yawl\elements\data\external". After starting the engine, it will automatically detect the file and make it available to the YAWL-editor, if the editor has a connection to the engine.

You also need to include the JDBC Driver of the database you are connecting to into the classpath of the application. If you are just running YAWL on your Apache Tomcat (which is usually the case), then just copy the JDBC Driver to [YAWL-dir]\engine\apache-tomcat-6.0.18\lib.

For the tutorial you will need to download the JDBC Driver for Microsoft SQLServer from Microsoft's website:

http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=…

I'll include the link into the tutorial, as it is easy to be forgotten. Also note the other requirements in the beginning of the tutorial:

The external database gateway can be used to populate task and net variables using database connections or update database fields from output parameters. The prerequisites for this tutorial are a correctly configured database and having the corresponding drivers in the "lib" folder of your YAWL-installation. For this concrete example I will be using the Microsoft SQL Server Express 2008 R2 and Microsoft's official jdbc driver to connect to the database. For this configuration I have to make sure, that SQL-authentication is activated on the server and the connecting user has the appropriate rights to access the database.

Yes i tried this.

I imported a yawl-jar in my project and i tried to make my own class, but this doesn't work...
In my eclipse he show me the error, that the jdom jar is missing, but i added this in the build path, but he still doesn't found the jar or has an other problem.

Also i have the problem that i can't see the example Gateway class in the editor, but a friend of my could see the class in the editor. Do you know maybe why i can't see the class?
I have tried yawl4study 2.3 and yawl4enterprise2.2 but both versions doesn't show me the gateway

thanks for already answearing

Are you using the class given in the tutorial?

If you are not, can you attach your implementation of the class? I could try it out on my installation and look for errors.

If the setDescription(String) method is missing, then the classes are sometimes not displayed.

Furthermore there is a bug in the YAWL Editor 2.3, that prevents the connection to the YAWL engine. An updated version of the editor can be found at:

http://www.yawlfoundation.org/pages/resources/latestbuilds.html

Judging by the screenshot, you have imported the classes in the jar file, try adding just the jar to the java build path (see the attached screenshot).

Regards,

Markus

Hello,

yes thanks, that was correct, now the errors in eclipse are gone.

But i still can't see my ExternalGateway.class in the Yawl Editor,...

i tried the Enterprise Version and the study Version of Yawl, but i can not see the Gateways, so i can not test my application.

by the way i updated to the latest build 2.3.2, thanks for this!

thanks for answearing

Hi,

Can you see, if codelets are being displayed? If they are not being displayed, ot shows a more severe error with the ExternalDBGateway you added.

If the package for the ExternalDBgateway does not match the one specified in the tutorial or if you did not copy the .class-file in the exact folder specified, the file will not be displayed.

I can only repeat my offer to check the code, if you post it. You can replace sensitive data from the code and it can speed up the process a lot.

regards,

Markus

ssuarezbe

Thu, 06/20/2013 - 00:26

Hi. I have a similar bug. I re-install the whole YAWL study and check if I can use, or not, the "simpleDBGatewayImp"; and I can't. The editor did not show it. I am also trying to create a new DBGateway, but before test it, I have to test the given examples, in order to avoid pre-existing bugs. Please help me. I am working on a Ubuntu 12.04 64-bits.

Hi,

First of all, make sure you are using at least version 2.3.1 of the YAWL Editor. Second, are none externalDBGateways showing, or is just the tutorial file not showing in the editor?

If none are showing, then a bug in the Editor 2.3 might be the problem, or the connection with the YAWL Engine ist not working properly (firewall, engine running, etc...).

It is also possible, if you wrote your own externalDBGateways, a misspelled package name or the absence of a set desciption can cause no files to be loaded.

Regards,

Markus

 

ssuarezbe

Sun, 06/23/2013 - 00:03

Thanks. Now the editor (Version 2.3.2) detect the "simpleDBGatewayImp", and 'yes' none external DBGateway were showed.

Now I will test my DBGateway. =)