yichao firstname, zeaster nickname, zhang lastname

blogsync with gui coming, import your wordpress to blogger

blogsync with gui coming

and with some control function about which posts to import.

it can be downloaded from


0. What is it used for?
This is a simple tool to import all posts from wordpress to blogger/blogspot.

1. How to use it?
0) set java in your path.
for windows users, run run.bat
for unix/mac users, run run.sh
1) set up your wordpress and blogger account.
2) choose one import option from option panel.
3) read posts from wordpress.
4) check posts and remove any posts that you do not want to import by selecting and right-clicking.
5) import now by just clicking the import button.

2. what is my blogger blogid?
It's in your blogspot Dashboard url, for example: http://www2.blogger.com/posts.g?blogID=18083698
"18083698" is your blogid.

3. what may cause this error?
[Fatal Error] :1444:21: Invalid byte 1 of 1-byte UTF-8 sequence.
org.apache.xmlrpc.client.XmlRpcClientException: Failed to parse
servers response: Invalid byte 1 of 1-byte UTF-8 sequence.

One of your posts may be an invalid xml.
please correct it and make sure its source code is valid xml, then import again.

4. any other questions?
Welcome to send your feedback to Yichao.Zhang & gmail.com
or leave me a comment on http://zeaster.blogspot.com


Erica Joy said...

Works like a charm! Thanks!

Anonymous said...

I have an xml file that I exported from WordPress. Unfortunately I cannot log in to my WordPress file because it is hosted by my university. Is it possible to use your tool to import the xml file into blogger?

Yichao said...

I have bad news and good news.
the bad news is the tool can not help importing the xml file.
the good news is you can follow these steps to import the xml file.
1) download wordpress from wordpress.org
2) set up a local wordpress site.
3) import your rss xml file into your local wordpress site.
4) import wordpress to blogger by this tool.

obsession-perfume said...

The history of perfume oils dates back to ancient Egypt when these fine scented oils were presented to royalty as gifts. In modern times, however, when the word "perfume" is said, most people think of department store fragrances, which consist mainly of the concentrated oil and alcohol solution. Nevertheless, as more and more people are finding out about them, perfume oils are experiencing great popularity. Here are some interesting facts about perfume oils:

Dr. J said...

Excellent job. It works. Question is: is there any way to import comments too or maybe I'm asking for too much? :)

Yichao said...

No, it can not import comments.
As looking for a job recently, I have not enough time to implement that feature. so today, I created a project at

welcome to contribute in implementing that feature.

BB Iverson said...

After setting up the two accounts, I press on "Read Posts from WordPress" and get:

when reading posts from wordpress, error occurs:
Failed to ready servers response: Connection refused: connect

BB Iverson said...

I had entered "http://" as part of my WP URL under Account Setting. I removed that and got rid of the aforementioned error. However, I'm now getting the error:

Failed to create input stream: Server returned response code 403 for URL:http://path/to//xmlrpc.php

Notice the two /'s before xmlrpc.php. Is that supposed to be like that?

BB Iverson said...

Sorry for all the comments. You can delete them if you want. I fixed my problem (again). There's a plugin called Enforce www. Preference that was affecting the path to my xmlrpc.php file. I deactivated it and now no more errors!

Yichao said...

Thanks. That would be a good tip for the Enforce www. Preference plugin users.

Anonymous said...

Trying to move a blog from a wordpress on my own domain to blogger.com,
i also get "Failed to ready servers response: Connection refused: connect".
i tried no 'http://', tried with it, tried adding a "/" after the domain. still getting the error...

What else can i try?

Anonymous said...

To be honest then i cannot understand a thing how it works. I am mac user and when i pressed on run.sh just one window opened with following text:
export CP=./lib/blogsync.jar:./lib/ws-commons-util-1.0.1.jar:./lib/xmlrpc-client-3.0.jar:./lib/gdata-client-1.0.jar:./lib/xmlrpc-common-3.0.jar
java -cp $CP org.easter.blogsync.BlogSync

So, what next?

Yichao said...

to the first anonymous user:
please check the xmlrpc.php file in the wordpress directory is valid.

to the 2nd anonymous user:
On your Mac, by default the .sh file may be set to be opened by a text editor.
you should run the run.sh file as a Mac bash shell.
i.e: type "sh run.sh" in your terminal.

Anonymous said...


I have a problem, nothing happends on the import tool, under "LOG" start to import posts , but nothing happends. Whats the reason?

Hope somebody can help me!



Yichao said...

Hi Mike,
Have you read posts from wordpress first?
if successfully reading the wp posts, please import 1 or 2 posts first for a test.
It may cost lots of time to import many posts for one time.
and there is a flaw in the tool, the log outputs info only when all posts have been imported, not one by one.

Susanna Ng said...

hi there, thx for the good work! however, i'm also getting error:

the wordpress url is invalid
no protocol: xxxx.wordpress.com/xmlrpc.php

i'm using free wordpress and i don't know where to find the xmlrpc.php file.. sorry i'm very much tech illiterate :)

Yichao said...

add "http://" to your wordpress address, and try again.

Susanna Ng said...

hi yichao, i did just that but this time i have another message:

failed to read servers response: connection refused: connect

i read your previous answer above but i don't know what is xmlrpc.php :P

Yichao said...

Hi Susanna,
remove "xmlrpc.php" from your wordpress url and try again.
the url looks like:http://xxx.wordpress.com

for "http://xxx.wordpress.com/xmlrpc.php ",
this url provides some functions to read from or post to your wordpress.
and the blogsync tool uses these functions to sync between wordpress and blogger.

Heather said...

When trying to run this program under Linux, I get the following error:

Exception in thread "main" java.lang.NoSuchMethodError: method org.easter.blogsync.SyncFrame.setMinimumSize with signature (Ljava.awt.Dimension;)V was not found.
at org.easter.blogsync.SyncFrame.initialize(SyncFrame.java:382)
at org.easter.blogsync.SyncFrame.init(SyncFrame.java:96)
at org.easter.blogsync.BlogSync.main(BlogSync.java:21)

maybe I'm missing some classes? Here is my classpath:


It's been a while since I've used Java, so maybe I'm doing something wrong. Any help would be appreciated.


Heather Buch

Yichao said...

please try jdk 1.5.
the method setMinimumSize() comes since jre 1.5, so the tool does not work against jre 1.4.x.

Heather said...

Hi again Zhang,

OK, jdk 1.5 worked (needed both lib and java binary to be 1.5).

Now I can see the java GUI, however, when I click "Read Posts from Wordpress", after filling out all settings, I get this error: Fatal Error] :1:1: Content is not allowed in prolog.

so, what does it mean? I'm getting closer....


Yichao said...

Hi Heather,
see http://zeaster.blogspot.com/2007/05/blogsync-20-released-import-your.html

hope this helps.

Anonymous said...

This is another tool I use it to import my WordPress to BlogSpot:

Anonymous said...

this tool does not connect to my blogger account. Pls. help.

Anonymous said...

I am getting error: cannot log into blogger account, Invalid credentials. Though its able to read the posts from WP. Pls. heeelp!

Yichao said...

can you login successfully with your username/password on the blogger website?

I tried it with the version 0.3, and it works fine.
you can find it on

Anonymous said...

when reading posts from wordpress, error occurs:
Failed to ready servers response: Connection refused: connect

How do I fix that? :(

Yichao said...

can you login successfully with your username/password on the wordpress website?

or you can export wordpress to a rss xml file first, and then import to blogger from the xml file.
try it with the version 0.3 from http://code.google.com/p/blogsync-java/downloads/list

Yichao said...

If you still have the error, pls provide some more details, see error.log in your blogsync directory.

snee said...

This is a superb tool - worked fine!

Many thanks :)

jen o said...

hi yichao! i hope you can help me. i don't know what "set java in your path" means. i'm on a mac. is it something in terminal?

after i do that, then i think i'll need to do what you told someone else... to make the run.sh file not open in text editor.

THEN hopefully i'll be on my way! thank you in advance. :)

Yichao said...

Hi jen
Have you installed jdk1.5.0 or later on your Mac OS X?
If not, upgrade from apple.com

jen o said...

i have the latest java update from apple. it says J2SE 5.0 (1.5.0).

Yichao said...

hi jen,
open terminal,
$java -version
if it says jdk1.5.0
it should be working fine, isn't it?
if sucks, what does it prompt in terminal?

jen o said...

do you mean to type in "$java -version" in terminal?

the terminal prompt is this:

Last login: Tue Sep 4 15:07:26 on ttyp1
Welcome to Darwin!
Jen-####-Computer:~ jen####$

Yichao said...

Hi jen,
I mean:
after '$' in the terminal, type "java -version" and press Enter, what does it prompt?

it should look like:
java version "1.5.0"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
Java HotSpot(TM) Client VM (build 1.5.0-b64, mixed mode)

jen o said...

yes! it says this:

java version "1.5.0_07"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_07-164)
Java HotSpot(TM) Client VM (build 1.5.0_07-87, mixed mode, sharing)

Yichao said...

Hi jen,
and then in the terminal, type "sh run.sh" to run blogsync

jen o said...

it says this:
run.sh: run.sh: No such file or directory

but it's in the blogsync folder on my desktop! do i need to put it somewhere special?

oh, thank you so much for your patience and help!

Yichao said...

Hi jen,
you should cd into your blogsync directory first.
says your run.sh is in "/home/jen/blogsync" directory.
in terminal,type:
$cd /home/jen/blogsync
$sh run.sh

$sh /home/jen/blogsync/run.sh

jen o said...

YES! that worked!

now i am having an error that other people have had:

when reading posts from wordpress, error occurs: Failed to create input stream: http://localhost/wordpress/xmlrpc.php

i have wordpress installed in my own domain, my xmlrpc.php file is in http://mydomain.com/blog. how can i tell blogsync where it is?

thank you so much. i'm getting closer!

Yichao said...

Hi jen,
press Accounts button on blogsync,
adjust the settings and save as default.

jen o said...

adjust what settings? i put in all my wordpress and blogger information, and that gave me the error.

Yichao said...

Hi jen
check settings.properties in blogsync.
Is it correct?
if not, adjust it with a text editor.
for example:
change wp.url=http\://localhost/wordpress
and some other settings.

jen o said...

ok, i opened settings.properties in text editor and everything is correct. i'm so confused!

Yichao said...

hi jen
pls send me error.log in the blogsync.

EscRiBiTioNiSt® said...

Is this software applicable with WordPress.com? I tried to move WP posts to Blogger, but always found some errors..


Yichao said...

try the lastest version:

EscRiBiTioNiSt® said...

Thank you for the reply.

However, when I click 'run' for Windows, there was nothing happened. The BlogSync window does not show up unlike when I clicked on 'run' from the earlier versions.

Yichao said...

hi EscRiBiTioNiSt,

I just post a faq on

andrian martin dominic said...

I have this problem

"when publishing post to blogger error occurs: bad request"

any idea whats wrong?

Yichao said...

Are you using the latest version from http://code.google.com/p/blogsync-java/downloads/list

the faq on
or send me your error.log if you like

vin said...


I am trying to implement automatic posting of links from del.icio.us to Blogger and it asks for :

"out_url is the full URL of the XML-RPC interface for your blog, which probably ends in something like mt-xmlrpc.cgi"

Can you help me to get the full URL of the XML-RPC interface for Blogger blogs?

Thanks in advance,

Yichao said...

Hi vin,
"The Blogger 1.0 API is no longer supported and must not be used for new client development. Please use our GData API instead."
documented on

so I suggest using GData API instead of xmlrpc.

burning flame said...
This comment has been removed by the author.
burning flame said...

Thanks a lot. This realy helped. I was able to move my post from November 2006 till March 2007, when it suddenly stopped. I get the messages as it is read and posted successfully but it doesn't appear in my new blog. Can anyone help?

Thanks in advance!

Yichao said...

Hi burning flame,
I guess that's due to Google blogger's limitation, you can only import at most 50 entries within one day. after that, It seems been imported but not without errors.
please try it after 24 hours.

more faq on

burning flame said...


Yes, you were right. I continued today and moved all the post until August. Tomorrow I will finish, I guess. I was really enjoing this programme. Thanks again!

pinksundrops said...

Yichao, I am also a Mac user. Forgive my ignorance, but what is the terminal and where can I find it to type in sh run:sh?

pinksundrops said...

Well I've kind of figured out the terminal. But when I type in the path then sh run.sh this is the message I get:

Exception in thread "main" java.lang.NoClassDefFoundError: org/easter/blogsync/BlogSync

Yichao said...

check this
the answer to
why do I get Exception in thread "main" java.lang.NoClassDefFoundError: org/easter/blogsync/BlogSync?

if you are on Mac or unix, please make sure you have read permission on blogsync/build/blogsync.jar file if not, open a terminal and type:
chmod 744 /path/to/your/blogsync/build/blogsync.jar

Goktug said...

First of all, I was looking forward a tool like this to move from wordpress to blogspot, thank you Yichao...

Here are a few comments for improvement and a question:
1.I think the tool needs to be shut down and re-opened after each settings change or any WP post readings. At least I made it work like that :)
2.When entering the WP address, DO NOT put a "/" at the end of the blog address or the tool makes double slashes which is a problem.
3.When I try to import my posts from my own WP blog, it only imports each blog partially until the "<.!--more--.>" part :( So most of my blogs contain that and the tool fails to import all of my posts. Is it possible to overcome this problem without fixing my all posts?

Hope to hear good news... :)

Thank you

A said...

hi can anybody tell how to convert wordpress template to blogspot?
really wanna know that :(

Elia said...

I was able to log into wordpress and download my blogs but I can't connect to blogger to upload: "cannot log into blogger account: Invalid Credentials" error the first entry and then "unauthorized" each subsequent entry.

I have blogsync-with-gui and have the settings correct (username/password logs me in on blogger site and blogID is from Posting tab). Any suggestions? Thanks for the help in advance.

Yichao said...

I have no time to change the source code recently. Sorry about that.

I have no idea about that.
Google it.

Please disable "Import Comment" function. Try again. Good Luck.
This function can not be used now. It is not developed by public Google API.

Elia said...

Thank you for responding. I looked through the files in the directory and ran the app but don't see an option to disable "Import Comment." I would appreciate it if you could point out to me where to find that?

Yichao said...

Are you using v0.3 from

it means uncheck the "import comment" checkbox

Elia said...

Yes, thank you. I was using blogsync-with-gui.tar.gz, which didn't have that option. I switched to blogsync-0.3. It is able to access WordPress blog, download posts but still cannot upload to Blogger. Same error message as before: Invalid Credentials and Unauthorized. I double-checked login and password and id and made sure import comments was not checked. Any further ideas?

Anonymous said...

Thanks so much. This worked well! One of the keys for me was to not use the http:// before my wordpress url, just the url.

mayank said...

thanx so much....it took me some time to figure that out.

Anonymous said...
This comment has been removed by a blog administrator.
Nelson Tan said...

Dear Yi Chao, wow, it was hard to come so far with using the software, so I'm having the same problem as Elia does now. Please help to follow-up. Thanks for all the hard work.

QingLin said...

I dunno if this will help anybody, but I realised after adding/editing the information in the "Account Settings" and after clicking the "Save" button, you have to exit the application and click "run.bat" to open the application again so that the application will register the newly saved information in "Account Settings".

I realised this after it kept saying it wouldn't connect after I continuously edited my "Account Settings" information.

FYI. :)

Jeroen Arendsen said...

Like Elia, I get a message just like that. Not being authorized. I think, in my case, it has to do with the fact that I have an old blogger account. And even though I can login with my gmail address, the admin rights to the blog are still registered to my old username. I can't switch it easily, but I am checking it out.

carlos.promote.trevino said...

thanks for this app!!! it worked perfectly... its stuff like this that makes me enjoy the internet ;)

RK said...

thanks buddy

your tool worked perfectly..

Francesco Mastrorizzi said...

After setting up the two accounts, I press on "Read Posts from WordPress" and get:

"when reading posts from wordpress, error occurs:
Failed to ready servers response: Connection refused: connect"

How can I deactivate Enforce www. plugin?

zeaster said...

In wordpress admin page

Francesco Mastrorizzi said...

where exactly?

zeaster said...

login your wordpress as admin,
open plugins tab in your admin page,
it lists all your plugins,
then deactivate Enforce www. plugin.

sohibi said...

i'm using windows XP, i have problem like this:

Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object

please help

Kat-Chup said...


I'm getting error message : When reading posts from wordpress, error occurs: failed to read server response: connection refused: connect. No valid posts.

Pls help.

I tried to deactivate the plugins as post by other user but i cant find the plugins tab in my wordpress page.

Kat-Chup said...


I've managed to start the importing but halfway through, it stopped and this message appear:
"when publishing post to blogger error occurs: bad request"

I'm not sure why cos i then close the application and restart it. it cannot be imported to blogger anymore and this error message keep coming up.

Any idea why? cos now only 42 posts are moved to blogger... :(

zeaster said...

you can only import totally about 50 entries within one day.
see more on

Stamatio and Company Realty said...

Hi I just downloaded this tool and used it, I was able to take 50 posts from my free wordpress blog to blogger, however when I tried to do another 50 it gave me this error:
"""when publishing posts to blogger, error occurs: Bad Request"" I am thinking that blogger.com has a limit on how many posts users can post a day, at any rate here is the last entry on the error log:
"""2009-04-11 03:19:41:046
com.google.gdata.util.InvalidEntryException: Bad Request
Blog has exceeded rate limit or otherwise requires word verification for new posts

at com.google.gdata.client.http.HttpGDataRequest.handleErrorResponse(Unknown Source)
at com.google.gdata.client.http.GoogleGDataRequest.handleErrorResponse(Unknown Source)
at com.google.gdata.client.http.HttpGDataRequest.checkResponse(Unknown Source)
at com.google.gdata.client.http.HttpGDataRequest.execute(Unknown Source)
at com.google.gdata.client.http.GoogleGDataRequest.execute(Unknown Source)
at com.google.gdata.client.Service.insert(Unknown Source)
at com.google.gdata.client.GoogleService.insert(Unknown Source)
at org.easter.blogsync.BloggerClient.newPost(BloggerClient.java:62)
at org.easter.blogsync.BloggerClient.newWordpressPost(BloggerClient.java:82)
at org.easter.blogsync.SyncFrame.importPosts(SyncFrame.java:333)
at org.easter.blogsync.SyncFrame$4.actionPerformed(SyncFrame.java:758)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)"""

zeaster said...

@Stamatio and Company Realty

see what I replied to burning flame

Stamatio and Company Realty said...

Thanks Yichao, It is a very good tool I think it needs a little fine tunning but I can deal with that, thank you again your hard work is much appreciated.

zeaster said...

@Stamatio and Company Realty
You are welcome.

josze said...


After I put my url in at account settings: "http://username.wordpress.com"

I get the error when I click on Read wordpress posts. I'm using free wordpress and there's no any sort of plugins.

failed to read servers response: connection refused: connect

xu said...

it took me awhile to figure everything. but it worked! thank you so much!

belinda's blog said...

Hi, I need help to open the Zip file. So I basically can't migrate my wordpress to blogger.

goodbuynow said...

Great app! great work, I have like 250 post and just keeping control of post id, its an easy job. thanks a lot!

Mohan Kannegal said...

thanks a ton... worked liked a breeze!! was dreading hand copying all these posts