Juxta-CAT: A JXTA project in Spain at Universitat Politecnica de Catalunya
Joan has just started a new project in the JXTA community at java.net. His project https://juxtacat.dev.java.net/ is just starting, but looks very interesting.
Here is his description of the project: The jxta-based project, called Juxta-CAT, is an effort to use the JXTA architecture to build a job execution-sharing distributed environment. The client peers from this network can use this environment to submit/run their own jobs, basically, programs written in Java and stored on signed jar files, which can use nodes reachable from the net.
So, now we know the project, who is Joan, and why JXTA? Here is the interview that tells all:
Name: Joan Esteve Riasol
JXTA ID: jestever
Universitat Politecnica de Catalunya, in Barcelona, Spain
Q: Tell us a bit about yourself.
I was born in Barcelona (SPAIN) on 1981. I've always lived in this nice Mediterranean city.
I began to feel interested on programming when I started my studies on Technical Computing Engineering, in the Computing Faculty of Barcelona. Before that, I did not used to spend too much time learning about programming languages.
When I started my first classes, I knew that I had chosen the best Career for me. I discovered that I was good and fast with design, development and object-oriented programming. Besides, I took Java as my favorite language to deploy my applications. learning about programming languages.
On 2003, I published my first complete application developed with Java (An applet-based Local Search resolver using XML) It was presented as my degree's thesis. Thanks to the experience gained during this work, I got a job as Java Developer in my University. I've been working here up to now, increasing my skills on Java and learning more about this technology.
After my thesis exposure, I decided to continue my university studies, and I began the second part of my degree: High Computing Engineering (in the same Faculty). I'm going to finish it very soon, because The Project Juxta-Cat is the master thesis that I'm going to present to reach my qualifications. It will be the second thesis written by me.
Computing apart, there are also other important things in my life. I like to practice sport (mountain bike is my favorite). I also love to travel, go out with my friends, stay with my family... I think that everyone needs to distinguish work from free-time, because both things are necessary to be happy during his life.
Q: How long have you been working with JXTA?
I heard about JXTA on 2004, and I have been using this technology up to now.
Q: What attracted you to choose the JXTA technology and platform?
I discovered JXTA when I got involved in a research Project for my University. This application, called "E-RUC", became a file-sharing environment which catalogues its contents using the MPEG-21 specification.
My work-package consisted in develop a suitable sharing platform which allow users to transfer the catalogued contents over the network. Those contents had to be signed using MPEG security issues, in order to create something different than Emule, Kazaa, and other P2P applications already released. The main goal was to exploit the MPEG-21 possibilities.
The JXTA technology was mentioned during a brainstorming with my work partners. We had to decide the most suitable P2P architecture for our project. I was responsible for prepare a report about JXTA and expound it to my supervisors.
I think that we finally choose to use JXTA at "E-RUC" for three reasons:
- Its an architecture built in Java, which supposes an easy integration with other applications developed in this language.
- It has proved that JXTA enjoys a very good maintenance and tracking: Sun developers & contributors who announce new releases every 2-3 months, mailings lists with active members asking and solving their answers there, excellent documentation, helpful wiki,...
- Several interesting open-source projects involved in this technology and already released: JxtaShell, MyJXTA and CMS (which includes file-sharing management)
Q: What open source JXTA projects are you working on?
After several months using JXTA on "E-RUC", I decided to perform my skills by proposing a Master Thesis related to this architecture. This Master Thesis is called "Juxta-CAT Project!" and I'm very near to publish its first stable release.
During its implementation I checked, as observer, other projects published at jxta.org. For example:
JXTA-Shell: As a starting point to understand the JXTA's internal policy: rendezvous & edge peers, pipe connections, peer visibility, advertisements management, etc...
MyJXTA2: As an idea of complete client-side application that works with this technology. Finally, I decided to implement my own classes diagrams and design patterns. But I could collect several ideas obtained from Gonzo's work. learning about programming languages.
CMS: As a File-sharing environment.
Q: Is your university using JXTA and if please describe it if you can?
I don't know if my university, the Universitat Politecnica de Catalunya, is currently handling other master thesis related with JXTA. But It must be possible, because the impact and spreading of JXTA are increasing every day!
Q: In either your projects, do you need JXTA what was that hardest part?
My main problems with JXTA appeared during the understanding and management of JxtaBidiPipes and Peer's Cache handling. Furthermore, I think that we could publish more samples explaining how to JXTA stores the discovered advertisements through the network.
Q: What JXTA platform are you using?
I've developed E-RUC (project at work) and Juxta-CAT (project as Master Thesis) using J2SE platform of JXTA. Usually downloading latest releases when they are announced. If everything's fine with my Thesis, I'm going to start learning JXME in order to work in a new Project, called "MEDIAMOBIL", which will pretend to research peer-to-peer technologies applied on mobile systems.
Q: This is for us to do a better job, what do you think needs to be added to the web site to help you?
The website is very complete and easy-to-use. The core applications and libraries are well documented. Mailing lists are also well-managed, and people feel free to participate on them.
If I'd become JXTA web administrator, I think that I'd try to improve the Tutorials section: it includes several old examples. I think I have talked about this in above questions.
Q: What is your most burning question about JXTA?
About the projects published on JXTA, I think that one of them is going to be forgotten by JXTA community. It's the JXTA Metering Project. I used to need this API for my projects, and all the documentation and mailing activity is becoming scarce (last posts on 2003). I had several problems when recompiling with Ant my first jxta releases by adding the modification of "meteringEnabled" property.
I have also found problems when I've tried to integrate the JXTA Shell in my own Swing-based applications. I still don't have found a suitable way to use SwingShellConsole, ShellConsole or other classes from shell.jar. I finally decided to use the solution offered by James Todd on MyJXTA: launch Shell as an independent app over the peerGroup and opening the Frame in a separate window. I'm not able to manage the Shell's content pane in order to include it on my Swing-based projects.
I keep saying that there is a lot of students working on JXTA. Here is another one from Spain. Juxta-CAT JXTA architecture to build a job execution-sharing distributed environment. In effect, letting you run jobs across the wire in a P2P network. I decided that this project was worth looking into and asking Joan a few questions and to learn why he choose JXTA. Read on for more!