2013-08-30 1 views
2

J'ai un projet Maven avec lequel j'essaie d'utiliser Volley. C'est la première fois que j'utilise l'un ou l'autre. J'ai ajouté Volley à mon dépôt local, et j'ai ajouté la dépendance dans le fichier pom.xml de mon projet. Tout compile bien, mais chaque fois que j'essaye de créer un nouvel objet Request, j'obtiens une exception NullPointerException sur l'objet super classe Request. De l'aide?Projet Android Maven utilisant Volley: NullPointerException

EDIT: Voici ma pile trace

8-29 22:14:58.830: ERROR/AndroidRuntime(696): FATAL EXCEPTION: main 
    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.lhs.app/com.lhs.app.MainActivity}: java.lang.NullPointerException 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2059) 
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084) 
    at android.app.ActivityThread.access$600(ActivityThread.java:130) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195) 
    at android.os.Handler.dispatchMessage(Handler.java:99) 
    at android.os.Looper.loop(Looper.java:137) 
    at android.app.ActivityThread.main(ActivityThread.java:4745) 
    at java.lang.reflect.Method.invokeNative(Native Method) 
    at java.lang.reflect.Method.invoke(Method.java:511) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553) 
    at dalvik.system.NativeStart.main(Native Method) 
    Caused by: java.lang.NullPointerException 
    at com.android.volley.Request.<init>(Request.java:129) 
    at com.android.volley.toolbox.JsonRequest.<init>(JsonRequest.java:58) 
    at com.android.volley.toolbox.JsonObjectRequest.<init>(JsonObjectRequest.java:47) 
    at com.lhs.app.MainActivity.startRequest(MainActivity.java:35) 
    at com.lhs.app.MainActivity.onCreate(MainActivity.java:26) 
    at android.app.Activity.performCreate(Activity.java:5008) 
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1079) 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2023) 
+0

Depuis sa compilation, il n'a rien à voir avec maven. Pour le NPE regardez le cogcat il vous dit exactement dans quel fichier et ligne il arrive. Nous ne pouvons pas aider sans voir votre code et logcat. – Henry

+0

Cette trace de pile a été extraite de logcat. Malheureusement, il n'y a rien d'autre autour de lui qui dit quelque chose en rapport. Cela implique que la cause se trouve quelque part dans la bibliothèque de Volley, mais je ne suis pas sûr de savoir comment cela se serait passé. – s73v3r

Répondre

1

à condition d'avoir la même version de Volley, le NPE se passe dans cette ligne:

mDefaultTrafficStatsTag = TextUtils.isEmpty(url) ? 0: Uri.parse(url).getHost().hashCode(); 

il semble donc que vous utilisez un url sans partie hôte.

+0

Oui. J'ai trouvé ça la nuit dernière aussi. J'utilisais une URL de "www.myurl.com" au lieu de "http://www.myurl.com". Je suppose que j'ai supposé que la bibliothèque supposerait un "http: //". – s73v3r

+0

J'ai aussi rencontré ça. Si vous le modifiez pour qu'il ne tombe pas en panne lorsque l'URL est malformée, vous obtiendrez un message d'erreur descriptif au lieu d'une exception de pointeur nul. – Gabriel