frascati issueshttps://gitlab.ow2.org/frascati/frascati/-/issues2018-02-06T10:32:20Zhttps://gitlab.ow2.org/frascati/frascati/-/issues/118servlet-api version conflict2018-02-06T10:32:20ZJeremie Guillemotteservlet-api version conflictThere is a version conflict with the servlet-api jar when building and executing FraSCAti-studio (standalone with ./run.sh command).
- The version 2.5 used by velocity and fratacl-bf.
- The version 3 is used by cxg 2.7.5 and jetty 8
A...There is a version conflict with the servlet-api jar when building and executing FraSCAti-studio (standalone with ./run.sh command).
- The version 2.5 used by velocity and fratacl-bf.
- The version 3 is used by cxg 2.7.5 and jetty 8
A solution to solve this problem is to exclude the servlet-api lib in the pom file.
A long-term solution would be to use the new version of servlet-api in fractal-bf-connectors and implementation.velocity. Tomcat 7 embeds the version 3 of servlet-api so maybe it will be a good solution to use only this version.https://gitlab.ow2.org/frascati/frascati/-/issues/110FraSCAti Studio application editor's tree should be recursively opened up by ...2013-03-25T19:02:43ZMarc DutooFraSCAti Studio application editor's tree should be recursively opened up by defaultStudio applications are not big so it's not a problem. And the first thing a user does when editing an application is to open up its left pane tree.Studio applications are not big so it's not a problem. And the first thing a user does when editing an application is to open up its left pane tree.https://gitlab.ow2.org/frascati/frascati/-/issues/109When deploying application, compilation errors should be shown in error message.2013-03-25T19:00:27ZMarc DutooWhen deploying application, compilation errors should be shown in error message.When deploying an application in FraSCAti Studio fails because of implementation compilation errors (ex. a function implementation without "return"), a generic error message is displayed. Detailed error information should be displayed in...When deploying an application in FraSCAti Studio fails because of implementation compilation errors (ex. a function implementation without "return"), a generic error message is displayed. Detailed error information should be displayed instead.https://gitlab.ow2.org/frascati/frascati/-/issues/108In Studio WS Binding editor, "wsdl uri" saves but never displays2013-03-25T18:56:33ZMarc DutooIn Studio WS Binding editor, "wsdl uri" saves but never displaysin Studio WS Binding editor, setting than saving "wsdl uri" changes the deployed output, but the editor always displays an empty field.in Studio WS Binding editor, setting than saving "wsdl uri" changes the deployed output, but the editor always displays an empty field.https://gitlab.ow2.org/frascati/frascati/-/issues/107Improve Template parameter escaping2018-02-06T10:32:19ZMarc DutooImprove Template parameter escapingWhen creating a new application from a Template (ex. BasicService), parameters are passed as a single '&'-separated string from the UI to TemplateRestImpl.createApplication(String params).
Therefore parameters can't contain '&', and oth...When creating a new application from a Template (ex. BasicService), parameters are passed as a single '&'-separated string from the UI to TemplateRestImpl.createApplication(String params).
Therefore parameters can't contain '&', and other nastier problems due to bad escaping.
Solution :
at least manually encode / decode each param on both sides, or on server-side let FraSCAti do the escaping by rather passing a Map-like argument, or even better on client side find a more automated way (implementation.widget, see helloworld-widget example ?)https://gitlab.ow2.org/frascati/frascati/-/issues/106Constants not supported in Java interface of BasicService template2018-02-06T10:32:18ZMarc DutooConstants not supported in Java interface of BasicService templateFor instance, when trying to create a new application using the BasicService template with the following Java interface :
public interface AddressService {
public static final String RESULT_OK = "OK";
public static final String RE...For instance, when trying to create a new application using the BasicService template with the following Java interface :
public interface AddressService {
public static final String RESULT_OK = "OK";
public static final String RESULT_KO = "KO";
public String checkAddress(String strHno, String city, String zip, String state, String country);
}
Here's the log it outputs :
file:///home/mdutoo/Documents/frascati-studio/mdutoo/MockAddressManager/src/main/resources
GRAVE: /home/mdutoo/Documents/frascati-studio/mdutoo/MockAddressManager/src/main/java/org/ow2/frascati/api/AddressService.java:
line 4: Syntax error, insert ";" to complete FieldDeclaration
GRAVE: /home/mdutoo/Documents/frascati-studio/mdutoo/MockAddressManager/src/main/java/org/ow2/frascati/api/AddressService.java:
linvi /home/mdutoo/Documents/frascati-studio/mdutoo/MockAddressManager/src/main/java/org/ow2/frascati/api/AddressService.java
mdutoo@mdutoo-laptop:~/dev/easysoa/workspace/frascati-trunk/frascati/frascati-studio$ vi /home/mdutoo/Documents/frascati-studio/mdutoo/MockAddressManager/src/main/java/org/ow2/frascati/api/AddressService.java
mdutoo@mdutoo-laptop:~/dev/easysoa/workspace/frascati-trunk/frascati/frascati-studio$ org.easysoa.utils.exceptions.CompilationException: Compilation error:
/home/mdutoo/Documents/frascati-studio/mdutoo/MockAddressManager/src/main/java/org/ow2/frascati/api/AddressService.java:
line 4: Syntax error, insert "}" to complete InterfaceBody
at org.easysoa.codegenerator.JavaCodeTransformer.transform(JavaCodeTransformer.java:94)
But if the constant field definition lines are removed, it works.1.6https://gitlab.ow2.org/frascati/frascati/-/issues/102Implementation.composite not working on FraSCAti studio2018-02-06T10:32:19ZJeremie GuillemotteImplementation.composite not working on FraSCAti studioThe tag implementation.composite is not working on FraSCAti studio.
- When an app containing an implementation.composite tag is loaded in the FraSCAti studio editor, an error is throwed an the screen remains blank (see logErrorEdit.log ...The tag implementation.composite is not working on FraSCAti studio.
- When an app containing an implementation.composite tag is loaded in the FraSCAti studio editor, an error is throwed an the screen remains blank (see logErrorEdit.log file). In the ComplexProcessor class, the method getMenuItem try to get a processor for a EObject of type SCAImplementation but there is no processor registred for this object type, so null is returned and an error is generated.
- When an app containing an implementation.composite tag is deployed locally, an error is throwed (see logErrorDeploy.log file).
The FraSCAti studio app is joined in DiscovProx.zip file.1.5https://gitlab.ow2.org/frascati/frascati/-/issues/101SCA include generate "already defined" error when used in FraSCAti studio2013-03-14T16:50:34ZJeremie GuillemotteSCA include generate "already defined" error when used in FraSCAti studioContext : adding an new app template in FraSCAti studio to create HTTP discovery proxy apps.
In the velocity template, I have to use the include tag on another composite file. In the generated composite file, there are all the content o...Context : adding an new app template in FraSCAti studio to create HTTP discovery proxy apps.
In the velocity template, I have to use the include tag on another composite file. In the generated composite file, there are all the content of the included composite but also the include tag. So at the compilation, a "component is already defined" error is throwed.
I have tried to delete by hand the include tag in the generated composite and it works. So the solution is either to remove the include tag in the generated composite or to remain the include tag but with no inclusion of the composite content.
There is also another solution. Currently, "the implementation.composite" tag is not supported by FraSCAti studio. Maybe the best is to use this tag to avoid the "is already defined" problem.
See the attached generated composite file for more informations about the problem.https://gitlab.ow2.org/frascati/frascati/-/issues/100Unable to compile & deploy app with annotated JAXRS interface2013-03-26T09:05:35ZMarc DutooUnable to compile & deploy app with annotated JAXRS interfaceCompilation fails because it can't find the javax.ws.rs.* imports.
Cause : they are not in the compilation classpath in SCAJavaCompilerImpl.compileAll() which is only all jars that are in lib/
Short term solution :
Here is a hack in SC...Compilation fails because it can't find the javax.ws.rs.* imports.
Cause : they are not in the compilation classpath in SCAJavaCompilerImpl.compileAll() which is only all jars that are in lib/
Short term solution :
Here is a hack in SCAJavaCompilerImpl.compileAll() that adds all FStudio classpath jars to the compilation :
// .concat(System.getProperty("java.class.path")); NOT THE RIGHT VALUE when started from maven
for (java.net.URL fileUrl : ((java.net.URLClassLoader) SCAJavaCompilerImpl.class.getClassLoader()).getURLs()) { // TODO DANGEROUS, BETTER INCLUDING FOR DEPLOY
try {
libList = libList.concat(System.getProperty("path.separator"));
libList = libList.concat(new java.io.File(fileUrl.toURI()).getAbsolutePath());
} catch (java.net.URISyntaxException e) {
e.printStackTrace(); // TODO log "unable to add to classpath default classpath lib ..."
}
}
Better long term solution alternatives :
* provide only "interface" jars ex. jaxrs/ws (jsr311 jars)...
* provides all "default" FraSCAti deps that are in the classpath to the compilation
* try to take into account the fact that those jars have also to be on the Deploy platform side...1.5https://gitlab.ow2.org/frascati/frascati/-/issues/99Application creation failure make subsequent creation fails2013-03-25T12:15:43ZMarc DutooApplication creation failure make subsequent creation failsThis is a very annoying bug because it makes testing / using FraSCAti Studio heavy and cumbersome (have to restart it all every error).
When an application creation fails (ex. because compilation error "publc" instead of "public"), some...This is a very annoying bug because it makes testing / using FraSCAti Studio heavy and cumbersome (have to restart it all every error).
When an application creation fails (ex. because compilation error "publc" instead of "public"), some things are rollbacked :
* application persistence is rollbacked
* application root directory is deleted (including source dirs) in ServiceManagerImpl.createApplication()
but others are not :
* source dirs are not removed from membraneGeneration (where they have been added by addJavaSource() in ServiceManagerImpl.createApplication())
As a consequence, subsequent application creations, or any FraSCAti compilation for that matter, fail because it can't find those deleted directories, with cryptic errors such as :
Creation error
No such file or directory <.,C:\Users\user\Documents\frascati-studio\user\Fibo2\src\main\java>
that appear within TemplateActionBasicService.doActionAfterCreation() / JavaCodeTransformer.transform() / JuliacComponent.compileJavaSource() / Juliac's SourceFile.addAllJavaFiles().
Solution : remove those also from Juliac membraneGeneration, or don't delete those dirs and the application itself.
Further, check for other such "bad state" problems.1.5https://gitlab.ow2.org/frascati/frascati/-/issues/98Basic template : creation when WS binding fails2013-03-25T12:12:38ZMarc DutooBasic template : creation when WS binding failsCreating a new application using Basic template and WS binding fails (brings to an empty application page with an empty Alert box).
Cause : BindingProcessor.createBinding() compares the template-provided option value "WebService" with t...Creating a new application using Basic template and WS binding fails (brings to an empty application page with an empty Alert box).
Cause : BindingProcessor.createBinding() compares the template-provided option value "WebService" with the (WebService)BindingProcessor label "Web Service".
Solution : remove the space in one or add it in the other. Which is the logical default ? (ex. according to BindingProcessor.getBindingView(), the label should be the binding element id, but what kind of element id is it ?)1.5https://gitlab.ow2.org/frascati/frascati/-/issues/97On Firefox 15.0.1, "Report a bug" banner stays static when scrolling2012-09-21T12:30:11ZMarc DutooOn Firefox 15.0.1, "Report a bug" banner stays static when scrollingOn Firefox 15.0.1, "Report a bug" banner stays static when scrolling, therefore hiding useful parts of the UI, such as "Implementation" in Basic WS Service form (see attachment).On Firefox 15.0.1, "Report a bug" banner stays static when scrolling, therefore hiding useful parts of the UI, such as "Implementation" in Basic WS Service form (see attachment).https://gitlab.ow2.org/frascati/frascati/-/issues/96Transaction problems on Windows2018-02-06T10:32:18ZMarc DutooTransaction problems on WindowsCreating a user account fails with a NullPointer exc in UsersImpl.createWorkspace() on line 165, because preferences.getWorkspacePath() returns null
Cause : it triggers Preferences initialization which calls PreferencesManager.verifyPre...Creating a user account fails with a NullPointer exc in UsersImpl.createWorkspace() on line 165, because preferences.getWorkspacePath() returns null
Cause : it triggers Preferences initialization which calls PreferencesManager.verifyPreference() which tries to start & commit a NEW transaction to persist the user workspace preference while there is already a current transaction
Short term solution : init Preferences before starting the first tx, ex. by adding
preferences.getWorkspacePath();
before
entityManager.getTransaction().begin();
in UsersImpl.createAccount()
Longer term solutions : evaluate interest of alternatives :
* by using the pattern "session in view" i.e. one tx per user web action, by putting an Intent over the main servlet which begins & commits tx HOWEVER COSTLY
* checking first if a tx exists by writing a
TransactionHelper {
doInTransaction {
if !tx.exists() begin();
internalDoInTransaction();
if !tx.exists() commit();
}
}
and using it by implementing internalDoInTransaction() everywhere a tx is committed now
* adding transaction boundary control by annotating classes & methods, using Spring's or without. HOWEVER this would be a major addition to FraSCAti as an app development platform...1.5https://gitlab.ow2.org/frascati/frascati/-/issues/94Database configuration problem on Windows2013-03-26T17:43:52ZMarc DutooDatabase configuration problem on WindowsOn Windows (Vista), connecting to database fails whatever Hibernate persistence properties have been set in the pom.xml
Workaround : directly set them in src/main/resources/META-INF/persistence.xml
Solution : who looks up the Hibernate ...On Windows (Vista), connecting to database fails whatever Hibernate persistence properties have been set in the pom.xml
Workaround : directly set them in src/main/resources/META-INF/persistence.xml
Solution : who looks up the Hibernate properties in the pom and sets them on Hibernate ??1.5https://gitlab.ow2.org/frascati/frascati/-/issues/93Deployment on Cloud simulation local environment2012-09-25T12:51:31ZJeremie GuillemotteDeployment on Cloud simulation local environmentJava Fibonacci sample in FraSCAti studio.
See interface and implementation sources at https://github.com/easysoa/EasySOA/wiki/Frascati-studio-feedback
When deploying this sample with cloud simulation (launched in a separated FraSCAti),...Java Fibonacci sample in FraSCAti studio.
See interface and implementation sources at https://github.com/easysoa/EasySOA/wiki/Frascati-studio-feedback
When deploying this sample with cloud simulation (launched in a separated FraSCAti), got an exception with CXF.https://gitlab.ow2.org/frascati/frascati/-/issues/92Null user home directory (workspace)2013-03-26T09:03:56ZMarc DutooNull user home directory (workspace)We've succeeded in creating a user account without home directory. Later this brings up file URLs containing ".../null/...", and possibly other errors.
Solution :
* if empty (after space trimming), set it to the user login by default
* ...We've succeeded in creating a user account without home directory. Later this brings up file URLs containing ".../null/...", and possibly other errors.
Solution :
* if empty (after space trimming), set it to the user login by default
* if any error while creating it, display this error to the user
* in addition, better : fill it by default to the user name in the UI1.5https://gitlab.ow2.org/frascati/frascati/-/issues/91Improve startup doc (README)2018-02-06T10:32:18ZMarc DutooImprove startup doc (README)* add to README :
- to create & fill database in command line :
$> mysql -u root -p
$mysql> create database easysoasimplified
$> mysql -u root -p < *.sql
- to debug : export MAVEN_OPTS="-Xdebug -Xnoagent -Xrunjdwp:transport=dt_soc...* add to README :
- to create & fill database in command line :
$> mysql -u root -p
$mysql> create database easysoasimplified
$> mysql -u root -p < *.sql
- to debug : export MAVEN_OPTS="-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000 $MAVEN_OPTS"
- how to package & deploy in production / standalone / without maven
- The Frascati studio service is deployed at http://localhost:8095/easySoa/
* add to README FAQ :
- to avoid error "java.lang.OutOfMemoryError: PermGen space" : export MAVEN_OPTS="-XX:MaxPermSize=128m $MAVEN_OPTS" (happens ex. when proxying http://www.w3schools.com/webservices/tempconvert.asmx?WSDL )1.5https://gitlab.ow2.org/frascati/frascati/-/issues/90More complete application generation2013-03-25T18:54:11ZMarc DutooMore complete application generation* for REST / JAXRS app templates, add import of annotation packages (.*) (@Path/get/produces...) automatically
* for SOAP / JAXWS app templates, add import of annotation packages (.*) (@WebService...) automatically
* add automatically pr...* for REST / JAXRS app templates, add import of annotation packages (.*) (@Path/get/produces...) automatically
* for SOAP / JAXWS app templates, add import of annotation packages (.*) (@WebService...) automatically
* add automatically promote name/namehttps://gitlab.ow2.org/frascati/frascati/-/issues/89Better app compilation error handling2018-02-06T10:32:19ZMarc DutooBetter app compilation error handling* display application source compilation error (ex. "publc" instead of "public") message to the user, so he knows what the problem is about
* if a class is already defined (ex. because of a previous failed compilation), subsequent appli...* display application source compilation error (ex. "publc" instead of "public") message to the user, so he knows what the problem is about
* if a class is already defined (ex. because of a previous failed compilation), subsequent application source compilations fail => create a new sub classloader for each compilation to do it in, rather than reusing the same one
* if in an app there is a null binding.w, NullPointer ex in ComplexProcessor line 58 and before that IOException in velocity => add guard checks in templates
* when deploying, fails if app/lib does not exist => check if it exists and create it if not1.5