Java Gaming Registry 1.0

Awhile back I posted a message thinking a registry would be a neat thing to have - wanting to play with Web Services - I decided to go ahead and build one…

http://www.worldofwar.com/games/JGR.jnlp

JGR is a registry where you can add/edit/delete your games (any type - jnlp, applet, etc) and have instance visibility to anyone using it. JGR supports marking games as your favorites, multi-threaded (updates are done in the background), ability to specify html desc of your game, multiple links (launch link, source, doc, whatever).

When you JGR starts, it will (in the background) contact my server and download incremental updates to your local games database - you can view/play games in the mean time.

Quick funtionality overview:

  1. You can manually trigger off an incremental by hitting Games->Refresh.
  2. If you want to simply refresh your whole local database - Games->Refresh All
  3. You can manage your own games by: Games->Add/Edit/Delete. Any changes then become visible to everyone on their next update.
  4. You can manage your favorite games by Favorites->Add/Remove.

I’m sure people will uncover some bugs and want enhancements to this (like maybe to rate a game or leave comments?) - so realize this is a v1.0! Also - if someone wants to donate an icon or splash screen - that would be great (I have a hard time making stick figures!).

For those interested: uses Axis for webservices, Tomcat and HSQLDB for the backend on my redhat 9 linux server.

Let me know any comments…
Tim ‘Pops’ Roberts

I added a test entry and it seemed to work. Then I closed re-ran and the test entry wasn’t there.

Curious - just refreshed and saw (I’m assuming) your this/that/the other thing test. Try a Refresh All and see if it shows up…

Hmm, nope still not there. That was my test entry. You aren’t using any special IP ports are you? The companies firewall may be blocking in that case.

Because I haven’t been able to get RedHat’s Apache (2.0.40) to communicate to Tomcat (all the connectors are for 2.0.42+) - I have Tomcat listening on port 8080. You can see if you can connect to my Tomcat by trying to browse to: http://www.worldofwar.com:8080.

This is temporary - once I get the two talking together - then I’ll change it back to the standard 80 port (which should have no issues with firewall/proxies).

Well I can get to that, so I wonder what is happening.

I think you have a different problem in your code than firewalls blocking port 8080. Perhaps your code still points to port 80?

As for Tomcat+Apache, I’ve always found that using the ProxyPass command works better than any sort of special integration. For example, the recipe site I built for my wife runs on an Orion server on a Sparc box behind my firewall. Here are the lines under the VirtualHost directive:


ProxyPass /recipes http://starbase:8080/recipes 
ProxyPassReverse /recipes http://starbase:8080/recipes

This is telling Apache to redirect requests for http://(servername)/recipes/* to a box called starbase on port 8080. In your case the lines would probably look something like:


ProxyPass /javareg http://www.worldofwar.com:8080 
ProxyPassReverse /javareg http://www.worldofwar.com:8080

Hope this helps. :slight_smile:

Believe it or not - I was just playing with those options. Something else in my httpd.conf file is preventing those from working however (client denied…). I’ll have to hold off on that until I get home tonight - then I can look at my directory and proxy options to find out what is being denied.

As to the code - Axis handles all the communications - I just point it to the webservice - which is currently “http://www.worldofwar.com:8080/axis/services/JGR”. In fact, you could override that with a system property of “com.worldofwar.games.JGR.webservice” to point it to some other webservice implementation. (You could also specify “com.worldofwar.games.JGR.datastore” to point the local datastore somewhere else)…

Give it a try now (got tomcat & apache talking now). It worked on my proxy here at work - let me know (btw - you may need to do a full refresh…).

Yep that got it working.

Pretty cool :smiley:

FYI. The look and feel that it’s using doesn’t work very well on Mac OS X. Lots of black texk on a black background. the menu headings are not readable… just plain ‘ick’

I really like it… good initiative! :slight_smile:

ooh - that’s sounds yucky on the mac osx. I use the freely available kunststoff L&F - it must not play well with mac osx. Give me a day and I’ll add an options menu allowing you to choose the L&F to use (and make it sticky)…

Just look for the “OS X” string in the OS name. If it’s there, set the L&F to system default, otherwise use Kunststoff. That’s what I’ve always done.

Aren’t L&F’s supposed to look&feel the same on each platform???

Supposed to be, yes. However, the Mac has a number of “features” that can change the look. For example, the set of fonts aren’t the same and may be anit-aliased by default. They also have some really great 2D acceleration stuff that unfortunately can really smeg up a good look and feel. (Some custom components I wrote would constantly throw exceptions with the 2D acceleration on.) As a rule, Kunststoff doesn’t work on Macs even tho it should.

I also did not know that interesting. At any rate - just updated it to start up in the native L&F. There is an options menu that will allow you choose the L&F (from the installed ones) and that choice will be ‘sticky’ from session to session.

Ah, MUCH better. Looks like you even set the property to put the menus at the top of the screen on Macs too.

Actually - no - but I’ll still take credit ;D