Here is an interesting blog talking about some of the issues: http://radar.oreilly.com/archives/2006/05/where_20_standards_1.html This was written in 2006 and it could be that GeoRSS has come on stronger since then.
You may well want to implement your app using GeoRSS. I forgot that I added the RomeEventHandler. I see that JIRA issue OFBIZ-721 deals with RSS and my issue is https://issues.apache.org/jira/browse/OFBIZ-1208. Maybe we should use 1208 to capture discussion. My controller.xml file has these: <!--handler name="wfs" type="view" class=" org.ofbiz.webapp.view.WfsViewHandler"/--> <handler name="rome" type="request" class=" org.ofbiz.webapp.event.RomeEventHandler"/> ... <request-map uri="ViewCustomRssFeed"> <security https="false" auth="false"/> <event type="rome" invoke="generateCustomRssFeed"/> <response name="success" type="none"/> <response name="error" type="view" value="error"/> </request-map> Here is the code for generateCustomRssFeed: public static Map generateCustomRssFeed(DispatchContext dctx, Map context) { Debug.logInfo("generateCustomCustomRssFeed(0) context:" + context, module); GenericValue userLogin = (GenericValue) context.get("userLogin"); String entryLink = (String) context.get("entryLink"); String feedType = (String) context.get("feedType"); Locale locale = (Locale) context.get("locale"); // create the main link String mainLink = (String) context.get("mainLink"); LocalDispatcher dispatcher = dctx.getDispatcher(); GenericDelegator delegator = dctx.getDelegator(); // get the main blog content GenericValue content = null; // create the feed SyndFeed feed = new SyndFeedImpl(); feed.setFeedType(feedType); feed.setLink(mainLink); feed.setTitle("Custom RSS Feed"); feed.setDescription("Custom RSS Feed"); Debug.logInfo("generateCustomRssFeed(1) feed:" + feed, module); feed.setEntries(generateEntryList(dispatcher, delegator, entryLink, locale, userLogin)); Map resp = ServiceUtil.returnSuccess(); resp.put("wireFeed", feed.createWireFeed()); return resp; } public static List generateEntryList(LocalDispatcher dispatcher, GenericDelegator delegator, String entryLink, Locale locale, GenericValue userLogin) { List entries = FastList.newInstance(); List customList = null; Map nullMap = null; try { customList = delegator.findByAnd("CustomEntity", nullMap); } catch (GenericEntityException e) { Debug.logError(e, module); } if (UtilValidate.isEmpty(customList)) { return entries; } Iterator i = customList.iterator(); while (i.hasNext()) { GenericValue v = (GenericValue) i.next(); Debug.logInfo("generateEntryList(1) v:" + v, module); String sub = v.getString("customName"); if (sub != null) { String thisLink = entryLink + "?customId=" + v.getString("customId"); SyndContent desc = new SyndContentImpl(); desc.setType("text/plain"); desc.setValue(sub); SyndEntry entry = new SyndEntryImpl(); entry.setTitle(v.getString("customName")); entry.setPublishedDate(v.getTimestamp ("createdStamp")); entry.setDescription(desc); entry.setLink(thisLink); //entry.setAuthor((v.getString("createdByUserLogin"))); GeoRSSModule geoRSSModule = new W3CGeoModuleImpl(); Double lon = v.getDouble("longitude"); Double lat = v.getDouble("latitude"); //GeoRSSModule geoRSSModule = new SimpleModuleImpl(); if (lon != null && lat != null) { Position pos = new Position( lat.doubleValue(), lon.doubleValue()); geoRSSModule.setPosition(pos); entry.getModules().add(geoRSSModule); Debug.logInfo("generateEntryList(2) entry:" + entry, module); entries.add(entry); } } } return entries; } I have added most of this email to JIRA-1208. I should mention that this work was sponsored by HotWax. -Al On 11/26/07, Chris Howe <[EMAIL PROTECTED]> wrote: > > From an OFBiz community perspective KML/Z would just be an output manner > (simply done through freemarker templates) as there doesn't seem to be a > whole lot of interest in storing data in XML (I floated the Xindice > integration earlier in the year and while it works there doesn't seem to be > much interest). The storage seems to be better through adding geospatial > tables or a secondary database and then linking it to a contentId. > > I need to do quite a bit of homework on the issue as a whole before I > bloviate on the issue. The topics that need to be decide on would be: > 1) storage format > 2) retrieval/output format(s) > 3) miscellaneous tools (centroid, area, perimeter, etc calculations) > 4) possibly rendering tools (if online map overlays are too limiting) > Let me know if I'm missing areas while I get my reading list in order :-) > > ----- Original Message ---- > From: Al Byers <[EMAIL PROTECTED]> > To: [email protected] > Sent: Monday, November 26, 2007 12:18:02 PM > Subject: Re: GIS Tools/modeling > > Chris, > > I am not sure that KML and KMZ are not better ways to go. I went the > "community" route because it just seems to fit in with OFBiz's > philosophy > and even Google should be (and I think is) using open source standards > in > their work. I should be able to discuss the advantages and > disadvantages of > the Google vs. the Geoserver/MapBuilder approaches, but I would have to > research the KML/Z tech more, first. > > The question to me answered is whether or not KML/Z are as good at > accessing > Geoserver servers as the MapBuilder product. If they don't do as good a > job, > then I think that developers may sometimes wish to access data that is > not > served up by Google Maps and won't be able to. > > The other test for KML/Z is if you can do custom rollover popups with > KML/Z. > It is easy to do simple ones, but sometimes you may wish to do more > complicated ones and I am not sure about the suitability of KML/Z for > that - > though I would guess it does fine. > > Please don't hesitate to discuss your issues here. Adding GIS to OFBiz > would > be a really cool add-on and the more people we can involve, the better. > > -Al > > On 11/26/07, Chris Howe <[EMAIL PROTECTED]> wrote: > > > > Very interesting. My implementation is extremely crude in comparison. > I > > was only outputting KML and KMZ for Google Earth. It seems I have > quite a > > bit of homework to do before being able to add very much to the > discussion. > > > > ----- Original Message ---- > > From: Al Byers <[EMAIL PROTECTED]> > > To: [email protected] > > Sent: Monday, November 26, 2007 10:46:31 AM > > Subject: Re: GIS Tools/modeling > > > > > > Hey Chris, > > > > Yes, I did some GIS work a few months ago. What I did was add a WFS > > interface to OFBiz. It is WfsEventHandler class in webapp.event. I > did > > a lot > > of work with GeoServer (http://docs.codehaus.org/display/GEOS/Home) > > and > > MapBuilder (http://docs.codehaus.org/display/MAInterstinP/Home) for > the > > client > > side. > > I used MySQL for a geo spatial DB. I think GeoServer is definitely > the > > way > > to go for the server since it is Java based and I had no trouble > > including > > it in my ofbiz tomcat setup. There is an effort to consolidate many > of > > the > > various client packages (such as OpenLayers) and MapBuilder seems to > be > > at > > the forefront of that effort (it uses OpenLayers to render, but adds > an > > XML > > syntax for implementing client frontends. > > > > It is a very exciting time for the GIS community as they are working > > together to create products and mashups that are the same sort of > > Goliath-killers in the GIS world that OFBiz is becoming in the ERP > > world. > > > > I also did a GeoRSS interface so that I could add markers to Google > > Maps, > > but I did not see how to add that to the ofbiz base code. I would be > > willing > > to share that code if we can see where to add it. See > > http://docs.codehaus.org/display/GEOSDOC/GeoRSS. > > > > I think the WFS interface is the critical part, as it lets you use > > other > > servers like GeoServer to server up the base GIS layers, but lets you > > use > > OFBiz to store and server the "points of interest". I only modeled > > points > > with my WfsEventHandler class. It needs to be extended to do a > > rectangular > > "find". One of the key things that I did was implement the > "ogc:filter" > > using FreeMarker templates. That is the part that needs to be > extended > > to > > implement the rectangular find. > > > > If you are not familiar with the WFS, WMS and WCS standards, you need > > to be. > > They are what make all the synergy possible. > > > > It has been a few months since I have had a chance to work on it > (which > > might as well be a few years at my age) so you might want to google > > "gis" > > and "ofbiz" to see what else I had to say about it. I would be glad > to > > discuss and work on something more substantial for ofbiz, but I am > not > > actively working on GIS at the moment, so my time will be limited. > > > > -Al > > > > On 11/26/07, Chris Howe <[EMAIL PROTECTED]> wrote: > > > > > > I just completed a rather remedial GIS implementation (very poorly > > > designed, but works for it's purpose). Anyone have any > > > interest/experience/intelligent thought with this? > > > > > > > > > > > > > > > > > > > > >
