Bonjour,

Je débute en développement Androïd, et un problème se pose :
Ma WebView n'interprète pas le code JSP que je lui fournis.

J'ai tenté de passer avec un "loadDataWithBaseURL", mais même résultat.

Voyez-vous pourquoi ?

Cordialement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
 
WebView myWebView = (WebView) findViewById(R.id.webkit);
		myWebView.getSettings().setJavaScriptEnabled(true);
		myWebView.setWebChromeClient(new WebChromeClient() {    
	        public void onProgressChanged(WebView view, int progress) {   
//	            activity.setTitle("Loading...");  
//	            activity.setProgress(progress * 100);          
//	                if(progress == 100) activity.setTitle(R.string.app_name);   
	        }           
	    });          
		myWebView.setWebViewClient(new WebViewClient() {   
	        @Override             
	        public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {      
	            // Handle the error            
	        }                 
	        @Override        
	        public boolean shouldOverrideUrlLoading(WebView view, String url) {    
	            view.loadUrl(url);        
	            return true;             
	        }         
	    }); 
		//chargement du site http dans le webview
		//on utilise la methode getString de la variable de contexte pour récupérer l'url car R.string.url_geek01 est un entier référence...
		myWebView.loadUrl("file:///android_asset/www/test.jsp");
 
		//NB on pourrait aussi charger un fichier local ainsi:myWebView.loadUrl("file://sdcard/");
//		myWebView.setWebViewClient(new WebViewClient()); //permet d'ouvrir les liens url dans le webview et non dans le navigateur
		myWebView.setInitialScale(1); // facteur de zoom initial
		myWebView.getSettings().setBuiltInZoomControls(false); 
//		// ne pas afficher le contrôle de zoom
		myWebView.getSettings().setUseWideViewPort(true); // activer le double-tap pour zoomer
		myWebView.getSettings().setDefaultTextEncodingName("UTF-8");
page "test.jsp" :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
<html>
<head>
</head>
<body>
<%= Ceci est un test %>
Hello world
</body>
</html>
Le layout :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
<?xml version="1.0" encoding="utf-8"?>
<ScrollView 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@color/white"
    android:orientation="vertical">
    <WebView 
        android:id="@+id/webkit"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"/>
</ScrollView>
Résultat de ce code :
"<%= Ceci est un test %> Hello World"