GraniteDS Projects with IntelliJ IDEA 9
November 30th, 2009 by Alexander DoroshkoGraniteDS technology allows to create enterprise web applications with Flex at client side and Java at server side. With IntelliJ IDEA you can develop GraniteDS projects with complete coding assistance both for Flex and Java, compile, deploy, run, and debug both client and server side in just few clicks!
Let’s create an IntelliJ IDEA project for Hello World example from GraniteDS developer guide. You may configure a project yourself or download it here
Note: if you download a pre-configured project you’ll need to check Java and Flex SDKs in project settings and Tomcat settings in java-server run configuration because paths and names on your computer may be different.
- Create a new IntelliJ IDEA project with 2 modules: Flex module and Java module with a Web facet. You project structure may be different, but I chose the following:

- Configure Flex module. Here we select to build a HelloWorld.swf application with main class named HelloWorld. The most important point is to set path to services-config.xml file and context root on the Advanced tab.

- Configure Java module and its Web facet. We need to set a dependency on Flex module and on /libs/granite.jar library. Web facet contains information about web.xml file location and required resources.

- Setup web application packaging configuration (artifact).
- Create server run configuration. Here we need to tell IntelliJ IDEA where Tomcat server installation is located and set artifact deployment point to graniteds-hello-world context. I cleared Start browser because I want to make separate run configuration for Flex client to be able to debug it.

- Create Flex run configuration.

That’s all. Now set breakpoints, launch server and a bit later — Flex run configuration, and everything is compiled and deployed, and the browser is open.



November 30th, 2009 at 11:19 am
That is awesome! I’m really psyched about this feature.
December 11th, 2009 at 7:30 am
excelent!!! the best ide.
December 12th, 2009 at 3:50 pm
Hi, thanks. This is a great demo.
I’m trying to run this on a mac, and I get an error in flex_client_temp_flex_config regarding the path to services-config.xml.
java-server\WEB-INF\flex\services-config.xml
The back slashes is Windows specific and don’t work on ‘nix systems. I haven’t been able to find where this path string is built.
December 12th, 2009 at 3:55 pm
Forget my last comment, except the part that this is a great demo
The back slashes was in the Advanced tab in the Flex module configuration.
September 21st, 2010 at 2:06 am
GraniteDS rock’s!!!
January 5th, 2012 at 5:32 pm
When i run the project i am getting [flex-client] unable to open ‘java-server/WEB-INF/flex/services-config.xml’. Can someone please tell me what has to be done to redemy this problem.
January 6th, 2012 at 10:25 am
I tried this and i am getting an error [flex-client] unable to open ‘java-server/WEB-INF/flex/services-config.xml’.
This is the output with the error:
11.1
true
C:/graniteds-hello-world/flex-client/src
java-server/WEB-INF/flex/services-config.xml
graniteds-hello-world
C:/graniteds-hello-world/flex-client/src/HelloWorld.mxml
C:/graniteds-hello-world/out/production/flex-client/HelloWorld.swf
January 10th, 2012 at 3:41 am
@Darin Please open Project Structure | Modules | ‘flex client’ module | Flex Compiler Settings tab | Advanced tab and set absolute path to services-config.xml file in Flex Data Services configuration file field.
January 15th, 2012 at 5:59 pm
@Alexander Doroshko. I wouls like to know does GraniteDs handle Data Persistence or do i have to implement Hibernate into my project. Can you guide me to a more complex application using this IDE and these technologies maybe a book or a blog. I want to do more advance application.
January 15th, 2012 at 10:04 pm
@Alexander Doroshko oh and thank you very much i got it working doing the exact same thing u said.
January 16th, 2012 at 4:38 am
@Darin. I’m afraid we don’t have more complex GraniteDS examples. You can create it yourself and publish on JetBrains TV (http://tv.jetbrains.net/). We don’t provide guides and manuals for specific technologies. We only can help with IntelliJ IDEA features.