Ciao a tutti!
Ho riscritto l'esempio che c'è nel tutorial come base per il mio studio e la mia personalizzazione.
PROBLEMA 1
Ho questo errore quando dal client mando dei dati (un integer) al server.
Per il client sono partito da un nuovo progetto B4XPages
Per il server sono partito da un nuovo progetto server in B4J che ha come template "Guess my number" (motivo per cui si trova anche il websocket; l'idea è di avere un solo server che abbia come client sia un'app dedicata sia per mezzo di un browser, ma quello sarà un passaggio successivo).
Cosa ho sbagliato?
Per il server ho fatto direttamente lo zip della cartella non vedendo alcun link interno all'IDE per la creazione dello zip.
PROBLEMA 2
Se mi è chiaro come inviare un dato al server (una volta risolto l'errore) come faccio a mandare il comando di reset?
Ho riscritto l'esempio che c'è nel tutorial come base per il mio studio e la mia personalizzazione.
PROBLEMA 1
Ho questo errore quando dal client mando dei dati (un integer) al server.
B4X:
Emulated network latency: 100ms
My ip is: 192.168.1.15
New Connection
State: Connected
My intScreenColor is 0
Error occurred on line: 70 (Main)
java.lang.RuntimeException: java.lang.ClassNotFoundException: b4j.example.b4xmainpage$_mymessage
at anywheresoftware.b4a.randomaccessfile.B4XSerializator.readType(B4XSerializator.java:314)
at anywheresoftware.b4a.randomaccessfile.B4XSerializator.readObject(B4XSerializator.java:374)
at anywheresoftware.b4a.randomaccessfile.B4XSerializator.ReadObject(B4XSerializator.java:129)
at anywheresoftware.b4a.randomaccessfile.B4XSerializator.ConvertBytesToObject(B4XSerializator.java:99)
at b4j.example.main._astream_newdata(main.java:272)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:564)
at anywheresoftware.b4a.shell.Shell.runMethod(Shell.java:629)
at anywheresoftware.b4a.shell.Shell.raiseEventImpl(Shell.java:237)
at anywheresoftware.b4a.shell.Shell.raiseEvent(Shell.java:167)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:564)
at anywheresoftware.b4a.BA.raiseEvent2(BA.java:111)
at anywheresoftware.b4a.shell.ShellBA.raiseEvent2(ShellBA.java:100)
at anywheresoftware.b4a.BA$2.run(BA.java:250)
at anywheresoftware.b4a.keywords.SimpleMessageLoop.runMessageLoop(SimpleMessageLoop.java:47)
at anywheresoftware.b4a.StandardBA.startMessageLoop(StandardBA.java:43)
at anywheresoftware.b4a.shell.ShellBA.startMessageLoop(ShellBA.java:121)
at anywheresoftware.b4a.keywords.Common.StartMessageLoop(Common.java:180)
at anywheresoftware.b4a.shell.Shell.raiseEventImpl(Shell.java:309)
at anywheresoftware.b4a.shell.Shell.raiseEvent(Shell.java:167)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:564)
at anywheresoftware.b4a.BA.raiseEvent2(BA.java:111)
at anywheresoftware.b4a.shell.ShellBA.raiseEvent2(ShellBA.java:100)
at anywheresoftware.b4a.BA.raiseEvent(BA.java:98)
at b4j.example.main.main(main.java:29)
Caused by: java.lang.ClassNotFoundException: b4j.example.b4xmainpage$_mymessage
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:602)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:340)
at anywheresoftware.b4a.randomaccessfile.RandomAccessFile.readTypeClass(RandomAccessFile.java:546)
at anywheresoftware.b4a.randomaccessfile.B4XSerializator.readType(B4XSerializator.java:291)
... 32 more
Per il client sono partito da un nuovo progetto B4XPages
Per il server sono partito da un nuovo progetto server in B4J che ha come template "Guess my number" (motivo per cui si trova anche il websocket; l'idea è di avere un solo server che abbia come client sia un'app dedicata sia per mezzo di un browser, ma quello sarà un passaggio successivo).
Cosa ho sbagliato?
Per il server ho fatto direttamente lo zip della cartella non vedendo alcun link interno all'IDE per la creazione dello zip.
PROBLEMA 2
Se mi è chiaro come inviare un dato al server (una volta risolto l'errore) come faccio a mandare il comando di reset?