I've just released the source code for MIDlog 0.3 to its Sourceforge repository. Besides the code for the J2ME client, it includes the source code for the web application used as the server side component by MIDlog.
Also, be sure to checkout Bloglib, which is the library I wrote to communicate with several weblog systems in an easy and straightforward way.
Hello people, MIDlog 0.3 has just been released.
I had a tough time finishing it because there were some big changes in the code structure, and I also had several problems with my home Internet connection that ended up delaying this release, but now it is here.
It contains some bug fixes and some new features summarized in the release notes below.
NOTES:
=====
- Added "Title" and "Category" support for Movable Type weblogs.
- Much better waiting screens.
- GPRS connection is now forced to close. This fixes a bug from previous versions, where the connection stayed open even after the post was performed, thus wasting resources and ...money! :D
- Added support for generic weblog systems that support Blogger API (Nucleus, Live Journal, etc.)
- Removed support for Live Journal as a separate entity. It is integrated to the Generic Blogger API blog type now.
- Fixed bug that prevented it from being installed thru a local connection (Bluetooth, Data cable, etc.). In the previous releases, the application parameters were specified only in JAD file, but now they are in both JAD and Manifest (which statys inside the JAR file) so there shouldn't be any more problems. (Thanks to David Kaspar) for that one.
KNOWN ISSUES (IMPORTANT):
===================
- I am aware that some users have been adding other weblog types (such as Nucleus) using the "Movable Type" option and changing the post url to match the added system's. *This won't work anymore*. Why? Movable Type was being supported using the Blogger API, but now it is supported by MetaWeblog API (that made the title and category support possible), so if you, for exampled, added Nucleus as a Movable Type blog, it won't work anymore, because Nucleus only supports Blogger API, not MetaWeblog. To overcome this problem, edit the blog options, changing the Blog Type from "Movable Type" to "Generic Blogger API", and changing the post url. Then it will get back to track.
- Your old Movable Type blogs will appear without the categories when if you upgrade to 0.3. This is expected behavior, because the blog data is saved locally and in previous versions categories were not supported. To work it out, just go to "Edit Blog", then click your old MT blog, and hit "Refresh blog categories" and it will be updated correctly.
- Users that had Live Journal weblogs will have to re-add them as Generic Blogger API weblogs, because direct support for Live Journal was removed because it became redundant.
If you have any questions, comment here or shoot me an e-mail
Download MIDlog 0.3 with your phone at http://rawsocket.org/midlog.wml or at Getjar.com
Enjoy!
[]s
Daniel
MIDlog 0.3 will be release tonight, with some nice new features, including support for generic Blogger API blogs, title and category support for Movable Type and so on.
Stay tuned :)
Today I received an invitation by Serge Korotkoff, from GetJar.com, to put MIDlog there to be downloaded by GetJar users. I uploaded all information needed and very soon the app will be available for download there.
Update:
Here is the MIDlog page at getjar.com
Hello folks, i have just released MIDlog 0.2. It contains some bug fixes and minor new features summarized in the release notes below. I added some comments here that are not available in the release files that come with the source code (download it here if you are a developer).
NOTES:
=====
- Better error-handling in the new post screen. (In the 0.1 release, when an error occurred in the "Write your post" screen, the only command available on the screen was the "Edit" command, thus preventing the user from trying again with exiting the application, and obviously, losing the post)
- Added Live Journal support. (It was already supported, but I had forgot to put the icons and menu items)
- Added support for accented characters (Full UNICODE support is on the way, but not now) (Thanks to Moe for that one. I had two problems: first one was to set UTF-8 as the default encoding for the XMLRPC client. That made, the accented chars started to work, but only with Blogger.com. The other implementations of BloggerAPI seemed broken in this topic. So i added, in the server application, manual handling of accented characters, transforming all characters greater than 127 and smaller than 255 in their XML entity presentation : &#nnn;. Full unicode support isn't available yet, because for that to work I need to write a function that URL-encodes the parameters using UTF-8 encoding, not only ISO-8859, which is the default).
- HTTP connection method changed, making the operation faster and more secure. (In 0.1, I used GET method, but that was bad because it could leave undesired user information in the web server's log files. I changed to POST and tried to mantain the same speed and reliability).
- Better URL encoding of the content. (In fact, in 0.1 there was almost no url-encoding at all :D )
Users can download the new version here and developers can download full source code here.
Enjoy!
[]s
Daniel
What is MIDlog?
Is a free J2ME application that uses Blogger API to post content to a weblog or site running some Blogger API-compatible software, like Blogger.com, Movable Type, Live Journal, etc. With MIDlog, a user can update his/her weblog or website using his/her cell phone, handheld or other wireless device that supports Java J2ME applications.
System requirements
A wireless device compatible with any current version of MIDP. That includes cell phones, handhelds, etc.
For the end user:
Interested?
For the developer:
MIDlog is open-source and GPL software, so you can modify it and customize it the way you want, only making sure you do not remove the credits from the source files, but add your new credits instead.
The bloggerapi.war file
As you know, J2ME devices have a lot of restrictions related to the size of an application jar, its use of memory, etc. To minimize these limitations, i split the application in two parts: a thin client part, which is the MIDlog.jar file, and a server part, which is the bloggerapi.war file. This web application file, when deployed, exploses a servlet, called bloggerservlet, that handles requests coming from the MIDlog by standard HTTP.
When you run the application using its default "MIDlog.jad" file, you will be posting your requests to the URL specified in jad's "ServletURL" parameter, which, in the default instalation, points to:
http://rawsocket.org:80/servlet/bloggerservlet
In case you want to post to another URL, just deploy bloggerapi.war file in your web server (Tomcat or something like that) and edit the MIDlog.jad file to fit your new url:
http://yourhost.com:80/path/to/bloggerservlet
Also, do not forget to change MIDlog.jad's "MIDlet-Jar-URL" property, from:
http://rawsocket.org/MIDlog.jar
To
http://yourhost.com/Path/To/MIDlog.jar
OBS.: I will post the source code to bloggerapi.war to SourceForge as soon
as they setup a new project for me :)
OBS 2: Do *not* forget to put the tcp port in your URL, otherwise a lot of devices won't recognize the url format.
Screenshots
I have put together some screenshots I took when running MIDlog in a Nokia emulator:
Contact
Visit Floating point weblog to find more about me, or Rawsocket web site to find more about Rawsocket.
[]s
Daniel