Hello James and David, Thanks for your replies. But James! I think PUT & DELETE is not going to work with blogger using Abdera, even after overriding.
I have another problem - it is regarding POST with roller. I use the latest version of roller and the code snippet below. Problem is with the line containign 'Service service = service_doc.getRoot();'. I am getting a ClassCastException saying FOMFeed can not be casted to Service. Any help? Chiradip Document<Service> service_doc = client.get(start).getDocument(); Service service = service_doc.getRoot(); Collection collection = service.getWorkspaces ().get(0).getCollections().get(0); String uri = collection.getHref().toString(); On Wed, Feb 20, 2008 at 11:17 PM, James M Snell <[EMAIL PROTECTED]> wrote: > They may be blocking PUT and DELETE. Try using POST but add the > X-HTTP-Method-Override header to the request. > > e.g. > > POST /foo HTTP/1.1 > X-HTTP-Method-Override: PUT > > More info: > http://code.google.com/apis/gdata/basics.html#Updating-an-entry > > In the Abdera client, the post override can be set using the > RequestOptions > > Abdera abdera = new Abdera(); > AbderaClient client = new AbderaClient(abdera); > RequestOptions options = client.getDefaultRequestOptions(); > options.setUsePostOverride(true); > ClientResponse resp = client.put("...", ..., options); > > > - James > > Chiradip Narayan Mandal wrote: > > * Hello, > > > > Can anybody please help me about the below code? It is mainly taken from > the > > example written by James. With the same condition POST is going > perfectly > > well. But I am not able to perform PUT and DELETE operations. I > understand > > the success status codes for PUT and DELETE are different from POST. I > am > > getting 400 as the status code and 'Bad request' as the satus code text. > I > > want to know how PUT and DELETE can be performed. > > > > Chiradip > > > > public* *static* *void* putToBlogger() *throws* Exception { > > > > Abdera abdera = *new* Abdera(); > > > > URL url = *new* URL("http://atomsandbox.blogspot.com/feeds/posts/default" > ); > > > > Parser parser = Abdera.*getNewParser*(); > > > > Document<Feed> doc = parser.parse( url.openStream() ); > > > > Feed feed = doc.getRoot(); > > > > Entry entry = feed.getEntry( "tag:blogger.com,1999: > > blog-8038874006622135494.post-6147415018903117917" ); > > > > *out*.println( "entry.getTitle() : " + entry.getTitle() ); > > > > entry.setUpdated( *new* java.util.Date() ); > > > > AbderaClient client = *new* AbderaClient( abdera ); > > > > String auth = GoogleLogin.*getAuth*( client, "blogger", > > "your_real_user_name", "your_password" ); > > > > RequestOptions options = client.getDefaultRequestOptions(); > > > > options.setAuthorization( "GoogleLogin " + auth ); > > > > BaseRequestEntity bre = *new* BaseRequestEntity( entry, *false* ); > > > > Response response = client.put( " > > http://atomsandbox.blogspot.com/feeds/posts/default", bre, options ); > > > > *out*.println("response.getStatusText() : " + response.getStatus() + " " > + > > response.getStatusText() ); > > > > *if* ( response.getStatus() == 201 ) > > > > *out*.println( "Success!" ); > > > > *else > > * > > > > *out*.println( "Failed!" ); > > > > } > > >
