Connect Java and Drupal
Platinum and gold sponsors
Drupal is great, but it has certain limitations too. Some limitations can be easily noticed from the “search” module: it doesn’t have good performance, and you have to specify the number of nodes to be indexed during each cron cycle (due to PHP time-out), which is rather weired for beginners. Such limitations impose great technical barriers to develop other features that requires extensive computation such as recommender systems and complex business processes.
On the other hand, Java is good in terms of dealing with complex things. It has better performance (in general), and it has tons of tools and a large community. Then, why don’t we use Java to complement Drupal?
Considering all that, I propose to develop the “Drupal Java Connector”(DJC) component. Basically, it is a library of Java classes for Java developers. It will provide reusable Java functions such as connecting to the Drupal database, creating Java objects from database tables (node, user, etc.), generating statistics (total nodes#, etc), and much more. Based on the library, Java developers can build auxiliary “backend” applications (search engine, recommender systems, workflow apps, etc) that could expand the capacity of Drupal platform. Note that my proposal is NOT rebuild a Java implementation of Drupal; rather, it is to create a Java library that developers can build “backend” Java applications that complement Drupal.
- It simplifies the development of Java-based search engines, recommender systems, and so on.
- It will open the door to many business players.
- It doesn’t affect the core structure of Drupal
I propose the format of the session to be a round-table discussion.
Community and Core
- Invited presenters will give a brief introduction, and propose a few ideas to be discussed
- Why it is needed? A few examples: search engine, recommender system, network analysis, business workflow, portal integration, etc.
- A simple framework proposal
- Open to discussion:
- Figure out the project name.
- What features should be included in the Java library?
- Which Java persistence technology should we use, Hibernate, EJB3, or POJO?
- Should we do “read-write” or “read-only” to the Druapl database?
- What are the class hierarchy (eg. DrupalObject=>Node=>ForumNode)?
- Draw attention from the community (explain why we think it is important).
- Figure out the features list, the general design, and the development schedule.
- Recruit volunteer developers and form a working team.
To be added.