Problem with Twitter4j 2.2.2 Serializable cannot be resolved
I'm trying to use twitter4j on blackberry SO 5.0.0, I did import the Twitter4j 2.2.2 to the project.
After importing the needed classes, the error appear at line twitter.setOAuthConsumer("Consumer Key","Secret Key");
.
Error: The type java.io.Serializable cannot be resolved. It is indirectly referenced from required .class files
I can import all classes from the lib without problem, it seems the problem is not there.
public class HelloWorld extends UiApplication
{
public static void main(String[] args)
{
HelloWorld theApp = new HelloWorld();
theApp.enterEventDispatcher();
}
public HelloWorld()
{
//MessengerContact contact = BlackBerryMessenger.getInstance().chooseContact();
//if(contact!=null)
//contact.getContactId();
HelloWorldScreen h = new HelloWorldScreen();
pushScreen(h);
}
}
And My main screen is like this
class HelloWorldScreen extends MainScreen
{
public static int level=0;
public HelloWorldScreen()
{
super();
LabelField title = new LabelField("BBM", LabelField.ELLIPSIS | LabelField.USE_ALL_WIDTH);
setTitle(title);
addMenuItem(new MenuItem("BBM", 10, 10) {
public void run() {
//
try{
BrowserField bf = new BrowserField();
UiApplication.getUiApplication().getActiveScreen().add(bf);
Twitter twitter = new TwitterFactory().getInstance();
twitter.setOAuthConsumer("XvQQ1trJYrSddj5bxp8mBg", "QrE6kZRtaz3xedH4KhP1c210hVjMDZknyjAgh0Q9w");
RequestToken requestToken = twitter.getOAuthRequestToken();
AccessToken accessToken = null;
//BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
while (null == accessToken) {
System.out.println("Open the following URL and grant access to your account:");
//bf.requestContent(new StringBuffer().append(requestToken.getAuthorizationURL()));
System.out.print("Enter the PIN(if available) or just hit enter.[PIN]:");
AutoTextEditField pin = new AutoTextEditField("Ingrese PIN(*)", "");
/**
try{
if(pin.length() > 0){
accessToken = twitter.getOAuthAccessToken(requestToken, pin);
}else{
accessToken = twitter.getOAuthAccessToken();
}
} catch (TwitterException te) {
if(401 == te.getStatusCode()){
System.out.println("Unable to get the access token.");
}else{
te.printStackTrace();
}
}
**/
}
//persist to the accessToken for future reference.
//storeAccessToken((int) twitter.verifyCredentials().getId() , accessToken);
Status status = twitter.updateStatus("prueba");
//System.out.println("Successfully updated the status to [" + status.getText() + "].");
}catch(Exception e){
UiApplication.getUiApplication().getAct开发者_JAVA技巧iveScreen().add(new RichTextField(e.getMessage()));
}
}
});
}
public boolean onClose()
{
Dialog.alert("Goodbye!");
System.exit(0);
return true;
}
// ...
}
This indicates that the package has been developed for Java SE, and won't work on Blackberry, which is JME.
Any time you see that error message referring to a class in java.something, this should be your conclusion.
精彩评论