[MOBY-dev] Minor changes in JMoby

Andreas Groscurth andreas.groscurth at googlemail.com
Mon Jan 5 10:17:38 UTC 2009


Hi all,

during the winter break I made some changes in jmoby and committed them 
today (without any formatting... no guarantee though).

1. DEPLOYMENT
Deployment via dashboard was only possible for Tomcat. I changed this 
that it is now also possible for JBoss (and probably other servers, but 
i couldnt test this).

For the user the only difference is now that he/she has to enter the 
complete path to axis on the server. Before that it was sufficient to 
enter 'axis' in the field 'Axis relative path in Tomcat', now you have 
to enter e.g. 'webapps/axis' for tomcat or e.g. 
'server/default/deploy/axis.war' for JBoss.

I also replaced all 'Tomcat' entries in the labels of the fields in the 
MoSeS generator tab to 'Server' to reflect this generalization and I 
changed the corresponding build files and the documentation.

The major difference is that now all 'tomcat' properties are renamed to 
'server' (e.g. tomcat.host = server.host) to reflect the generalization.

I'm still not happy that now there is the tomcat.xml file which is used 
for the deployment - but honestly i dont trust currently the renaming in 
the cvs via Eclipse (as i would love to rename it to server.xml or so) 
and so i kept it as it is.

2. SERVICE IMPLEMENTATION
If a service returns a collection of datatypes, the skeleton will now 
also have a method which accepts a collection and not only an array. To 
be consistent with the existing jmoby API I kept the method which 
accepts the array.

So now there are always two methods which the service provider can 
choose, based on the service implementation.


If a datatype has any other primitives as relationship than 
String/Boolean it is now possible to pass the Java primitive and not 
only the moby primitive.
E.g. AminoAcidSequence has the SequenceString which is a String and 
Length which is an Integer. Before there was the method 
setSequenceString(String sequence) and setSequenceString(MobyString 
sequence), but for Length there was only setLength(MobyInteger length). 
I added the templates for float and integer, so that now every datatype 
which has children of these primitives also have the methods for the 
Java corresponding primitives..


3. DASHBOARD
I added an unregistration button at the bar at the bottom (with the 
other buttons) to the registration panel of Namespaces, Data Types and 
Service Types in Dashboard, to be consistent with the unregistration 
button of the service regisration panel.


The changes are tested and are compilable - if you find any errors or 
problems or have any objections let me know.

Thanks and a happy new year.

Andreas



More information about the MOBY-dev mailing list