Buongiorno A tutti,
volevo creare una semplice procedura in b4j con WebViev,
in pratica devo mettere un indirizzo ip e fare un loadurl per vedere la pagina di ritorno,
solo che " la bilancia in questo caso" mi da ( Client does not have access to the resource on the server )
normalmente la utilizzo con internet explorer per fare teleassistenza direttamente sulla bilancia, la bilancia in questo caso ha dentro un serverino java che ci permette di gestirla,
come posso fare in b4j un piccolo webview? cosi da evitare internet explore..
allego il mio codice.
P.s. se metto url di libero.it per esempio mi apre la pagina e mi fa navigare senza problemi
volevo creare una semplice procedura in b4j con WebViev,
in pratica devo mettere un indirizzo ip e fare un loadurl per vedere la pagina di ritorno,
solo che " la bilancia in questo caso" mi da ( Client does not have access to the resource on the server )
normalmente la utilizzo con internet explorer per fare teleassistenza direttamente sulla bilancia, la bilancia in questo caso ha dentro un serverino java che ci permette di gestirla,
come posso fare in b4j un piccolo webview? cosi da evitare internet explore..
allego il mio codice.
P.s. se metto url di libero.it per esempio mi apre la pagina e mi fa navigare senza problemi
esempio:
Sub Process_Globals
Private fx As JFX
Private MainForm As Form
Private xui As XUI
Private Button1 As B4XView
Private WebView1 As WebView
Private TextField1 As B4XView
Private Button2 As B4XView
Public we, tp As JavaObject
Private Button3 As B4XView
End Sub
Sub AppStart (Form1 As Form, Args() As String)
MainForm = Form1
MainForm.RootPane.LoadLayout("Layout1")
MainForm.Show
' errore che mi ritorna il device'
' Client does not have access to the resource on the server
Dim jo As JavaObject = Me
jo.RunMethod("disableSSLTest", Null)
WebView1.Enabled = True
WebView1.Visible = True
we.InitializeNewInstance("javafx.scene.web.WebEngine",Null)
'
tp = WebView1
we = tp.RunMethod("getEngine",Null)
End Sub
Sub Button1_Click
WebView1.LoadUrl(TextField1.Text.Trim)
End Sub
Sub Button2_Click
we.RunMethod("executeScript",Array As Object("history.back()"))
End Sub
Sub Button3_Click
we.RunMethod("executeScript",Array As Object("history.forward()"))
End Sub
#if JAVA
import java.security.GeneralSecurityException;
import javax.net.ssl.HostnameVerifier;
import javax.net.ssl.HttpsURLConnection;
import javax.net.ssl.SSLContext;
import javax.net.ssl.TrustManager;
import javax.net.ssl.SSLSession;
import javax.net.ssl.X509TrustManager;
public static void disableSSLTest() {
TrustManager[] trustAllCerts = new TrustManager[] {
new X509TrustManager() {
public java.security.cert.X509Certificate[] getAcceptedIssuers() {
return null;
}
public void checkClientTrusted(
java.security.cert.X509Certificate[] certs, String authType) {
}
public void checkServerTrusted(
java.security.cert.X509Certificate[] certs, String authType) {
}
}
};
// Install the all-trusting trust manager
try {
SSLContext sc = SSLContext.getInstance("SSL");
sc.init(null, trustAllCerts, new java.security.SecureRandom());
HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
} catch (GeneralSecurityException e) {
}
HostnameVerifier allHostsValid = new HostnameVerifier() {
public boolean verify(String hostname, SSLSession session) {
return true;
}
};
// Install the all-trusting host verifier
HttpsURLConnection.setDefaultHostnameVerifier(allHostsValid);
}
#end if
Last edited: