Blogging Roller

Dave Johnson on open web technologies, social software and software development


Ekit works as well.

Now I'm testing the Ekit editor. Looks good! This time I'll comment on Russell's comment about the "whiny biatches out there in blogland" who complain about Jakarta.  Right on Russell!  I totally agree.  The good stuff produced by Apache and Jakarta far outweighs the bad.  Every big organization is going to have politics and a jackass or two, that's just human nature.

Tags: Roller

Testing 123.

I'm testing Mitchell's IE-only WYSIWYG HTML editor.  Anthony Eden reported a bug, I fixed it, and now you are reading the test data.  While I'm here I'm comment on The Server Side's new RSS feeds: it's about time!  I'm not going to complain that they do not validate because the RSS validator just came online today and because I'm just happy to have more RSS feeds.  Now it is your turn Cafe au Lait: give us some feeds and give us some permalinks!  Please?

Tags: General

Does your RSS fee validate?

This is a brand new RSS validator, built from the ground up to support all versions of RSS (but optimized for RSS 2.0). Previous efforts (RSS 0.91, RSS 1.0) were either not comprehensive, or not user-friendly; this validator attempts to be both. The interactive web front end is available now; XML-RPC, SOAP, and XML-over-HTTP interfaces are coming. Concept, web design, and 300 test cases by me. Coding by Sam Ruby. And of course it's open source.[<a href= "http://diveintomark.org/archives/2002/10/22.html#rss_validator">diveintomark.org]
Awesome! Roller 0.9.6's RSS feed <a href="http://feeds.archive.org/validator/check.cgi?url=http://www.rollerweblogger.org/rss/roller ">validates as RSS 2.0! Thanks to Mark Pilgrim and Sam Ruby for this much needed new service!
Tags: Roller

RTP Bloggers October lunch.

As Bruce Loebrich notes, the RTP Bloggers group had it's October lunch today at Sarah's Empanadas in the RTP and a very nice lunch it was. That's Research Triangle Park for all a y'all folks who ain't familiar with the old north state.
Tags: Blogging

The problem with my HTML.

The other day, Matt Raible wrote to tell me that my weblog which claimed via DOCTYPE to be XHTML, would not validate as XHTML. Then I realized that it wouldn't even validate as HTML. It was nothing, a jumbled mess of angle-brackets and unquoted attributes. How embarrassing. I tried to fix this yesterday, but the best I could do was HTML 4.01 Transitional. Still, it is nice to validate as something.
Tags: Roller

Final features before 0.9.6

Roller's RssServlet now supports RSS 2.0. By default, Roller spits out RSS in the Radio style with escaped HTML content in the description element and no content element. If you pass an excerpts=true request parameter to the servlet, then it spits out RSS in Movable Type style (or is that Pilgrim style?) with a short excerpt of the content in the description element and the full content in the content tag. Thanks to Mark Pilgrim for the RSS 2.0 template.

Also, Roller now includes current day referer, page hit, and RSS hit tracking. There is a new page in the Editor UI that diplays referers in a page-able table and there is a macro for displaying the top N referers on your page. You can see the output of the macro on the bottom right of this page. I'm not sure if this is enough to earn me a Dave Rules!, but it is equivalent to the referer ranking functionality that you get with Radio.

Final release of 0.9.6 is imminent.
Tags: Roller

McCain on SNL.

Senator John McCain hosted Saturday Night Live last night and played a role in just about every skit. McCain did a great job playing the role of gruff-voiced Attorney General John Ashcroft. One of his lines was something like this: "we will not be safe until every American has a barcode tatooed on his neck and a chip in this foreheard that responds to this remote control." The Ashcroft wig was spot-on as well.

Tags: politics

Where the hell is the RSS feed?

Aslak: I have moved my blog: http://rinkrank.blog-city.com/
<a href= "http://radio.weblogs.com/0109827/2002/10/19.html#a1155">Brett: And where the hell is the RSS feed?

Good question. It appears that <a href= "http://www.n-ary.com/blog/overview/features.cfm">blog-city does not support RSS. I think Aslak is just afraid of having a blog that is powered by Java and XDoclet ;-)
Tags: Blogging

Halloween season.

After a couple of weeks in the 80s and 90s, it finally feels like fall here in Raleigh and now we are enjoying a beautiful fall weekend. The State Fair has started and my driveway is covered with thick layer of acorns. Today we took the boys over to the Vollmer Farm in Bunn, NC. The Vollmer family opens up the "back 40" during October. They have hay rides, trike races, horseback riding, a pumpkin slingshot, two corn-field mazes, and a 40 foot underground sack slide. The farm is about 40 minutes from Raleigh. It is great fun for the younguns, but make sure you pack a lunch because the chow line can be pretty long.
Tags: General

Cocoon at the JUG, Eclipse at the WUG.

The Triangle Java Users Group (JUG) and the RTP Webshere Users Group (WUG) have a couple of interesting meetings lined up. At the JUG meeting on Monday night (Oct. 21), Conrad D'Cruz and <a href= "http://www.trilug.org/~acoliver/hackinglog.html">Andrew Oliver will present an Introduction to Cocoon 2.0. CORRECTION: The very next night Next week at the WUG meeting, John Kellerman (the Product Manager of WebSphere Studio Workbench) will be giving a full presentation and demo of Eclipse. Here are links to more meeting information:

Cocoon at the JUG: Monday Oct. 21, 2002
Triangle JUG: http://www.trijug.org/meetinginfo.jsp

CORRECTION: Eclipse at the WUG: Tuesday Oct. 29, 2002
RTP WUG: <a href= "http://www.rtpwug.org/meetings.html">http://www.rtpwug.org/meetings.html

I wish I could give you permanent links to these talks, but the JUG does not provide permanent links to meeting info until after the meeting has occured. The WUG doesn't even keep old meeting info online. Don't the webmasters realize that an UG without permamently linkable knowledge of it's history is like a tree without roots?

Tags: Java

The problem with HTML.

<a href= "http://fishbowl.pastiche.org/archives/001126.html#001126">Charles Miller has written a useful piece on the state of HTML, XHTML1, and XHTML2 with pointers to more info and interesting opinions on the topic. I feel like I've been almost totally out of touch with this stuff. I need to do some reading and not just the frenetic blog scanning that normally counts as reading for me.

One of the main reasons that I started working on Roller was to learn how to develop a webapp on both the server and client side. As an app server developer, I know the app server side of things like the Servlet API and J2EE, but on the client-side sometimes I feel pretty lost. I need to take a break from the Roller server-side and learn how to give the Blogging Roller site a serious <a href= "http://diveintomark.org/archives/2002/05/12.html">markover.
Tags: Roller

NBML

<a href= "http://radio.weblogs.com/0108103/2002/10/18.html#a102">NBML is vaporware isn't it? I can't find it anywhere.
Tags: General

Toplink

Anyways, having gotten rid of my initial JDO bias, I just started looking at what would do the job and decided that TopLink is actually really cool. It's expensive - $7000 a server - but not as much as it used to be with Bea's classic $2000 a pop for developers. It meets all the criteria in Dave's graph for top down, middle out and bottom up.[<a href= "http://www.russellbeattie.com/notebook/index.jsp?date=20021018#010545">Russell Beattie comments on Toplink]
I've only heard good things about Toplink, but it sure is expensive. I wonder what kinds of deals they cut for ISVs. Imagine how expensive JIRA would be if Atlassian used Toplink at that price.
Tags: Java

Referer log and RSS hit counter in Roller 0.9.6?

Roller suggestions Dave, if you're listening, here are my only two gripes with Roller right now. I would really really want a referrer log, and I would also like to know how many are subscribed to the RSS feed. I have a tracker which shows how many hit the webpage, but I have a feeling most people use RSS feeds (I do anyway). Add that, and I'm going to have to post a You Rule blog entry. Deal? ;-) [Valued Roller customer Rickard Oberg]
This is pretty tempting: Rickard Oberg publicly saying that "Dave rules." I could use that on my resume. All I have to do is to steal some code from <a href= "http://www.russellbeattie.com/notebook/">MiniBlog and add an RSS hit counter? I'm in!
Tags: Roller

Victory over OC4J!

I couldn't resist solving the weird CSS problem and now Roller runs perfectly on <a href= "http://otn.oracle.com/products/ias/content.html">OC4J!

The problem was this: IE was able to load the Roller style sheets, but Mozilla was not. The solution was this: add the line "text/css css" to OC4J's config/mime.types file and then delete the contents of the OC4J temporary files directory OC4J/default/roller.

Rejoice: no more install-blogging!

Tags: Roller

Conquered OC4J authentication.

OC4J does not like the funky server-side redirect that Roller uses to return the logging-in user to the page where they clicked the login link. This problem was causing a recursive redirect to redirect to redirect to infinity. Mozilla recognized the problem and put up that "Redirection Limit" popup, which is nice. IE did not recognize the problem and caused OC4J to crash, which is, to say the least, not nice.

This was an easy fix for me. I just switched my login-redirect.jsp page to use a client-side redirect rather than a server-side redirect and everything is peachy.

The next problem is XML related. Roller can't seem to read its XML menu definition file. The code, which works fine on Resin and Tomcat, uses ServletContext's getResourceAsStream() to get the XML file. On OC4J, the XML parser (called by the Jakarta Digester) blows up with a "XML-0220: (Fatal Error) Invalid InputSource" error. Rats! Time for some more googling.

UPDATE: this turned out to be a missing slash in the path to the menu config file under WEB-INF. I added the slash and that fixed Roller on OC4J and did not break Roller on Tomcat. Now Roller works perfectly on IE, but can't find it's stylesheets on Mozilla. I'll save this last problem for tomorrow.

Tags: Roller

More install-blogging

Tonight, I've been trying to complete the install of Roller of Oracle's OC4J9.0.3 J2EE app server. I've had a little luck, but I am still not quite there.

I tried the JDK 1.4 trick suggested by Matt from the JavaLobby and that worked for me. OC4J is now working fine for me under JDK 1.4.

Next, I searched around for docs on configuring OC4J Servlet Authentication so that I can get OC4J to use Roller's rolleruser and role tables. I found the <a href= "http://www.orionsupport.com/articles/datasourceusermanager.html"> docs for the Orion DataSourceUserManager on <a href= "http://www.orionsupport.com">OrionSupport.com.

Following those docs, I put a user-manager element after the principals element in the OC4J/application.xml file like so:

<user-manager class="com.evermind.sql.DataSourceUserManager">
  <property name="table" value="rolleruser" />
  <property name="passwordField" value="password" />
  <property name="usernameField" value="username" />
  <property name="groupMembershipTableName" value="role" />
  <property name="groupMembershipUsernameFieldName" value="username" />
  <property name="groupMembershipGroupFieldName" value="role" /> 
  <property name="dataSource" value="jdbc/rollerdb"/>
</user-manager>

and I put a security-role mapping after the commit-coordinator elementin OC4J/application.xml:

<security-role-mapping name="guest">
  <group name="guest" /> 
</security-role-mapping>

Then I tried to login and OC4J complained that it could not find Roller's login page "404 Not Found Could not find form-login-error page: '/login.jsp?error=true'" Matt Raible's cool error=true trick is not acceptible to OC4J. So I wrote a loginerror.jsp page, took out the error=true thing and tried again.

Now, OC4J displays my login.jsp page, but when I post the page I get a "Redirection Limit for this URL exceeded, unable to load the requested page." Time to do some googling.

Tags: Roller

You just need to find a style.

I think you just need to find a style that adds the most value to yourself and the people you talk to and stick to it. I need to think about this more, but "trust" is a very key word. Blogs enable the creation and management of trust outside of centralized brands and authority... [<a href= "http://joi.ito.com/archives/2002/10/17/trust_and_the_blogging_ethics_discussion.html">Joi Ito on disclosure and trust in weblogs]
Tags: Blogging

Almost there.

After setting up the Roller datasource by following the instructions in the Orion docs Roller still would not work. Turns out, unlike Tomcat, OC4J needs to see a resource-ref in web.xml for before it allows access to a datasource. Once I added that resource-ref to web.xml, Roller was able to find it's datasource. I am now able to view weblog pages on OC4J. The next step is to configure authentication so I can login.

This is what I added to OC4J/config/data-sources.xml:

  <data-source   
    class="com.evermind.sql.DriverManagerDataSource" 
    name="rollerdb" location="jdbc/rollerdb" 
    connection-driver="org.gjt.mm.mysql.Driver" 
    username="scott" 
    password="tiger" 
    url="jdbc:mysql://localhost:3306/roller?autoReconnect=true" 
    inactivity-timeout="30" 
    schema="database-schemas/my-sql.xml" /> 
This is what I added to Roller's web.xml:
  <resource-ref>
    <res-ref-name>jdbc/rollerdb</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
  </resource-ref>

It is late and I'm tired of this experiment in install-blogging, so I'm gonna call it a night. I hope I haven't bored you to tears and caused you to unsubscribe from my RSS feed. I'll wrap things up tomorrow night and give you a final report.

Tags: Roller

OC4J can't handle JDK 1.4?

I got the horrible "error: Invalid class file format... The major.minor version'48.0' is too recent..." error message from OC4J. So I switched from JDK1.4.0_02 back to JDK 1.3 and now Roller is actually coming up, but it can't find it's datasource. Fortunately, little Leo needs some attention because I need a break. UPDATE: Matt from the JavaLobby suggested these fixes for the JDK 1.4 problem, but I have not tried them yet:

Add this to the entry for the JSP servlet in config/global-web-application.xml:
  <init-param>
    <param-name>javaccmd</param-name>
    <param-value>/usr/java/j2sdk1.4.1/bin/javac</param-value>
  </init-param>
Add this to the end of config/server.xml:
  <compiler executable="javac"
    classpath="/usr/java/j2sdk1.4.1/jre/lib/rt.jar" />
Tags: Roller

« Previous page of month (Oct 2002) | Main | Next page of month (Oct 2002) »