Free XML-RPC blog ping site submitter: “Blog Ping”

Here’s a free, as in beer, Blog Directory and Search Engine Site Submitter I wrote which works by sending out an XML-RPC Blog Ping.

“In blogging, ping is an XML-RPC-based push mechanism by which a weblog notifies a server that its content has been updated. An XML-RPC signal is sent to one or more “ping servers,” which can then generate a list of blogs that have new material. Many blog authoring tools automatically ping one or more servers each time the blogger creates a new post or updates an old one.”

– according to the Wikipedia article: ‘Ping (blogging)‘.

One of the things I have noticed most across the blogosphere and the wider ‘net during my time blogging, and it’s been just less than a year, is the obsession people have with “SEO”, or ‘Search Engine Optimization‘. There are a huge number of blogs dedicated to the subject and who simply go on about the whole SEO thing alone.

Frankly I feel that if I’m going to be putting effort into blogging then I might as well make it easy for people to find me and I’m sure plenty of other people feel the same way. If using technologies like blog pinging and other techniques like SEO is the norm, then it’s almost as though you are forced into doing the same to compete for readership; a technical ‘arms race’ in the competition for the attention of your readers.

So I wrote a program to help me notify the largest number of directories and search engines possible, in a simple and convenient way, and you’re welcome to use it as well.

You can download the Blog Ping application here: Blog Ping v1.0 (BlogPing.Jar)

You may find that if you click on the link to the file above, and you have Java installed, that it will attempt to run the application from where it is, so it’s probably best to do a ‘Save as…’ and save a local copy.

Please don’t deep link directly to the file above, instead link to the page you are currently on at:

Here’s what the application looks like in action:

Blog Ping Application FAQ

Basically what does this software do ?

It notifies a variety of Blog Directories and Search Engines that your blog has been updated recently, which is often followed by those Blog Directories and Search Engines checking your site for new content, using a technique called ‘Spidering‘. Once verified by these ‘Web Crawlers’ they list your new content, postings, etc., in their directories and search results.

The list of Blogs is configurable, as is the the list of Blog Directories and Search Engines Servers (with a maximum of one thousand), and the application has a default list of those Servers, which includes some of the most popular that I have tested the application with successfully.

Will it improve the quality of my site ?

C’mon, now you’re just being silly, of course it won’t.

Will it improve the quality of conversation about my site ?

Again ‘No’, only you can do that by engaging your audience.

Will it get you listed on a large number of Search Engines and Blog Directories ?


Will it generate page hits from people potentially coming to read your site ?

Yes, but very much dependent on the volume, quality, and cadence, of your blog posts. I’ve tested it against sites with small volumes of blog posts and poor cadence, and I have found that despite being listed in those blog directories, etc., it does not generate page hits.

Fundamentally you need three things, but you need these anyway to create a blog which gets regular readership, and that is:

  • A good volume of posts
  • Good quality of posts with interesting and engaging content
  • Regular postings, ‘Cadence’

Will it connect you with people who are genuinely interested in your topic matter ?

Maybe, maybe not, you’ll just have to see. It’s very dependent on the answer to the question above…

When should I use this software and how often should I use it ?

I recommend that you use it when you’ve initially set up a site to make as many Blog Directories and Search Engines aware of your new site as possible. You should probably be aware that a number of them require you to create an account with them, however the default list included in the application aren’t any of these.

After that I recommend that you only use it after posting a new blog entry and definitely not more than once a day (even with new posts and content).

What will this software do on my system ?

It will load up, along with the libraries it is bundled with. It uses the vanilla java swing libraries, as well as the apache xml-rpc project libraries.

Once loaded up it’ll do nothing until you either:

  • add, modify or delete a blog which you want to notify blog directories about (it’ll save your blogs in a file called “blog.txt” in the same directory as the application is run out of)
  • add, modify, or delete a blog directory / search engine to notify via an xml-rpc pingback (it’ll save your blogs in a file called “ping.txt” in the same directory as the application is run out of)
  • start a blog ping session, where it will cycle through all the blogs you’ve added, and through all the blog directories you’ve added, and send each one an xml-rpc pingback call (it’ll connect to the Internet via the Apache xml-rpc libraries, so you may need to let Java or BlogPing.jar have access through any locally configured firewalls)
  • have a look at the about page, which will load info from a special page from this blog, where I’ll post help and any news or updates about the application

What do I need to get it to work ?

An installed copy of the the Sun Java Runtime Environment (JRE). I set the software to be compatible with JRE version 1.5 and above, although I’ve only tested it from JRE 1.6 onwards.

Whilst writing it I used the Java Development Kit (JDK) version 1.6.0_0.5 (or 1.6.0 update 5, as it’s also known, the latest current version) so the JRE which matches this will definitely work.

You can get the Sun JRE here:

Will it work on my system ? I use Windows, Linux, Solaris, etc.

Yes, it very much should, and because of Java’s platform independence, meaning programs written in the Java language have to run similarly on any supported hardware / operating-system platform via the Java Virtual Machine (Java VM or JVM). It should work on any system for which there is an available JRE.

For a full list of Operating Systems, System Configurations, and platforms, supported with a JRE (version 1.6) from Sun Microsystems, please see this page:

How do I run this software ?

Easy peasy, once the JRE is installed, two choices, command line or desktop environment.

If you are using the command line the following command should run it:

java -jar BlogPing.jar

Otherwise you should be able to simply ‘click’ on it from your desktop environment for it to start up.

For this to work files of the type “jar” (a ‘Java ARchive’) need to be registered as being associated with Java (notably the Java executable). You may find that the application doesn’t start in this instance and a common cause is that another application, most frequently compression and de-compression software like Rar or Zip (or there windowed versions, like WinRAR or WinZip), have already made this association and thus will be started up instead of Java.

How do I use this software ?

I’ve used screen grabs to show how to use the program, you can resize these images using the “Body Image Size” function over in the top of the right hand side bar (options are “Small”, “Medium”, and “Large”, and they should be set on “Medium” when you first come to the page).

When the program loads this is the first screen, and as it is such a simple program there is not much to it.

There are four menu items of note: “Exit” (under “File”), “About” (under “Help”), “Add Blogs” and “Add Pings” (both under “Menu”).

This screen shows the two menu item which you need to use to get the software to ping the servers you want to notify. You need to let the program know which blogs to tell people about and which directories and search engines to notify.

If you don’t have any blogs configured it will ask you to add one.

You need four pieces of information for this:

  • The title of your blog.
  • The URL of your blog.
  • The main URL for blog posts, most frequently the same as the URL of your blog.
  • The URL for syndication services on your blogs, either RSS or Atom. If you don’t know it simply add the URL from above.

If you choose ‘OK’ above it will have saved your blog, and you are free to add more, edit whats already there, or delete some.

Afterward add, editing and deleting blogs choose ‘OK’ to save them or ‘Cancel’ to ignore all the recently made changes.

If you don’t have any servers to send blog pings configured it will ask you to add some.

You can choose to add them individually, or to load the default list.

Having choosen to load in the default list of servers to ping, you are free to add more, edit whats already there, or delete some.

Afterward add, editing and deleting servers to ping choose ‘OK’ to save them or ‘Cancel’ to ignore all the recently made changes.

All servers to be sent blog pings are saved in a text file called “ping.txt” which should be in the same directory, or folder, as the one the ‘BlogPing.jar’ program was started in.

When adding a blog directory or search engine ping service you need just one piece of information: the URL for XML-RPC blog pings for that site.

Here the program is working through a processing cycle of blogs and servers to ping. The results are posted in the main notification output area. Once it’s finished going through all of the blogs you call grab the output and copy it into a text file.

Here’s the about box, it loads a page from this blog, which means I can update the page and make sure news and information about the program is kept up to date.

Why did I write it ?

Because I could and because I wanted more flexibility in using blog pinging over and above the default blog ping functionality in my blogs platform (Roller Weblogger, created by Dave Johnson, is used exclusively to host

You may find that you have a similar requirement, even if your using another blogging platform such as WordPress, Movable Type, LiveJournal, or the like.

Plus I really dislike elitism, especially ‘technology’ elitism based on arbitrary things like what or how much you know, for me experience of having ‘done’ something matters more. Giving this software away and distributing it in the way that I am is an attempt to bring this capability to the non-programming, non-scripting, and much wider, blogging community.

Shouldn’t you have just contributed to Roller ?

Probably, in the longterm yes, as this is partially a tactical ‘fix’, done primarily to see if I could do it reasonably easily, of which the answer was definitely ‘yes’.

I also wanted more control and granularity when notifying Search Engines and Blog Directories of updates to my site, in fact I initially used it to make sure my blog was listed on as many global sites as possible.

What went into writing it ?

The Java Development Kit (JDK) 1.6.0 update 0.5 (and of course, as stated above you’ll need a compatible JRE to run it).

NetBeans version 6.0.1, which you definitely don’t need to run this program, available here:

Please note that the latest version of NetBeans (6.1) is currently in RC, or ‘release candidate’, form and that I’ll likely update Blog Ping to have been written in that in the very near future.

Download Java

Download Netbeans

The Apache XML-RPC libraries, version 3.1, also which you don’t need to run this software, available here:

The ProGuard libraries, version 4.2, also which you don’t need to run this software, available here:

Anything else interesting about this software ?

Yes, my default set of blog ping services, which I’ll post later, and that I obfusticated the code using the latest version of ProGuard after being inspired by this article written by Geertjan on how to obfusticate java code written using NetBeans.

Possibly that I wrote it whilst listening to Flanders and Swann, notably “Madeira M’Dear”, famous for its syllepsis.

And maybe that I wrote this blog post listening to New Order, specifically Blue Monday (’95 tweleve inch version), and thanks to Walter Milner I think the Pink Fairies got in there somewhere too.

What do you want for this software ? Similar Blog Ping clients are on sale around the ‘net from anything between $30 and $100 ?

Nowt, yadda, zip, nothing, I just wanted to see if I could do it, and found that I could. If you use it, and you like it, please tell people about it, blog about it, add links to this page and this blog (but not the download itself), and leave a comment if you have time.

I’m especially interested in hearing from anyone who downloads and installs Java and the JRE as a result of wanting to use this software, so please let me know if you have.

Link to my blog here:

Link to the Blog Ping application page here:

And comments here please:

There are also online services like ‘Pingoat’ and ‘King Ping’ which act as ‘Blog Ping aggregators’ for you, you can find them at and respectively. Whats nice about the software here is that you can configure it to use these ‘Blog Ping aggregators’, if they have an XML-RPC interface, which in the case of ‘Pingoat’ and ‘King Ping’ they both do.

By the way, there are other free Blog Ping software out there, notably Blog Pinger (a Linux command line utility, which as it’s written in Python should run on any OS where you have a compatible Python instance installed) and Submit’em now (a Firefox Add on).

Go check them out, they might be more to your liking, and diversity is good.

Will you be maintaining or updating this software ?

Maybe, it depends on three things: demand (from you guys), use (for me), and time (i.e. what gets priority over this).

What changes would you make ?

Probably spend some time learning more about the XML-RPC blog ping call protocol, I’m sure I could generate much higher volumes of Blog Ping successes if I did.

What license does this software use ?

This instance uses the Creative Commons License. Copyright 2008, Wayne T. Horkan.

Why isn’t this software ‘Open Source’ ?

If there is enough demand for the software, and more importantly changes to the software, then I’ll consider putting the effort into setting it up as Open Source. However, frankly, it’s a very minimal and trifling set of code at the moment.

Is this software anything to do with Sun Microsystems at all ?

This is my personal weblog and on it I do not speak for my employer. However the program was written using Sun technologies and I do work at Sun (although I put this software together as a home project and my current role at Sun rarely involves writing code).

Does that mean that Sun are they responsible for it ?

No, definitely not, nag me about it, not Sun, and do that in the comments section of this page please.

Is this a ‘White Hat‘ or ‘Black Hat‘ SEO tool or technique ?

The tool is implicitly amoral, it’s the user that constructs a moral or immoral pattern of usage.

Using this software aggressively to send falsified blog postings will likely, and deservedly, get search engines and blog directories to block your site, potentially even de-listing it, so please don’t be irresponsible in using it.

Have a look at the following Wikipedia article for more information on White Hat versus Black Hat SEO techniques.