2014-10-31 2 views
1

Я использую библиотеку facebook4j для интеграции facebook api в java. Однако я сталкиваюсь с проблемами при попытке опубликовать фотографию с атрибутом места.Facebook4j library post photo issue

Media media = new Media(new File(<image-path-here>)); 
PhotoUpdate update = new PhotoUpdate(media); 
update.message("photo upload test"); 
update.setPlace("Bangalore"); 
facebook.postPhoto(update);  

Но я получаю следующее исключение: SEVERE: Servlet.service() for servlet [post] in context with path [/Sample] threw exception [message - An unknown error has occurred.FacebookException{statusCode=500, errorType='OAuthException', errorMessage='An unknown error has occurred.', errorCode=1, errorSubcode=-1, version=2.2.0}

Оказывается, что без «setplace» его произведений полностью отлично. Я не уверен, что я делаю правильный путь и искал в Интернете, чтобы получить некоторые образцы. Но не смог найти его, может ли кто-нибудь предложить, что я делаю неправильно здесь? Я могу опубликовать фотографию на facebook без настройки местоположения, но мне нужно установить местоположение для изображения.

Thanks

+0

Ребята нашли кого-нибудь решение для вышеуказанного вопроса? Я действительно борется здесь :( – Ishaan

ответ

1

С моим решением я загружаю изображение на сервер и загружаю этот файл в facebook. вы можете увидеть приведенный ниже пример.

/** 
* NOTE: Post Photo To Wall Facebook 
* @param String idToObject 
* @param File filePhoto (This is real file from server) 
* @return List<String> 
*/ 
public String postToWallPhoto(String idToObject, UploadedFile uploadedFile) { 
    PhotoUpdate photoUpdate = null; 
    try { 
     Media media=new Media(uploadedFile.getFile()); 
     photoUpdate = new PhotoUpdate(media); 
     photoUpdate.message(postItem.getGroupMessage()); 

     String idPost = facebook.postPhoto(idToObject, photoUpdate); 

    } catch (FacebookException e) { 
     e.printStackTrace(); 
    } 
    return idPost; 
} 
+0

Спасибо за ваш пример кода. Я хочу, чтобы можно было добавить местоположение к изображению. Не могли бы вы рассказать мне, работает ли это с методом setplace(), как в моем вопросе? – Ishaan

+0

жаль, что я не пробовал его с setPlace() раньше. Вы можете протестировать его с помощью своего кода –

+0

Спасибо @ minh-nguyen. Позвольте мне попробовать. – Ishaan

0

Можете ли вы попробовать это.

PostUpdate post= update = new PostUpdate("@Minh Nguyen") 
     .picture(new URL("Img_url")); 
facebook.postFeed(id,post); 
+0

Вышеупомянутые работы полностью прекрасны, спасибо. Но мои требования: 1. Изображение должно поступать из локального хранилища, 2. Должно присутствовать местоположение захваченного изображения. Я не смог найти какое-либо решение до даты, поэтому я добавил местоположение в сообщение/рассказ. Во всяком случае спасибо за ваш вклад! :) – Ishaan