Hi,
I am trying to connect to one webservice and download data depending on the data received. My program works fine with the normal mosync app, Now I am trying to convert the same to WormHole, but assertion fails.
I/@@@ MoSync( 610): MoSyncWebChromeClient.onJsAlert: Creating Conneection Screen
D/dalvikvm( 73): GREF has increased to 301
W/System.err( 610): java.lang.Exception: MYASSERT failed
W/System.err( 610): at com.mosync.internal.android.MoSyncHelpers.MYASSERT(MoSyncHelpers.java:91)
W/System.err( 610): at com.mosync.internal.android.MoSyncNetwork.getConnectionObject(MoSyncNetwork.java:491)
W/System.err( 610): at com.mosync.internal.android.MoSyncNetwork.maHttpSetRequestHeader(MoSyncNetwork.java:435)
W/System.err( 610): at com.mosync.internal.android.MoSyncThread.maHttpSetRequestHeader(MoSyncThread.java:3063)
W/System.err( 610): at com.mosync.internal.android.MoSyncThread.nativeRun(Native Method)
W/System.err( 610): at com.mosync.internal.android.MoSyncThread.run(MoSyncThread.java:917)
E/@@@ MoSync( 610): BigPhatError created:Error thrown in MYASSERT
W/System.err( 610): java.lang.Exception: Stack Trace
W/System.err( 610): at com.mosync.internal.android.MoSyncHelpers.MYASSERT(MoSyncHelpers.java:92)
W/System.err( 610): at com.mosync.internal.android.MoSyncNetwork.getConnectionObject(MoSyncNetwork.java:491)
W/System.err( 610): at com.mosync.internal.android.MoSyncNetwork.maHttpSetRequestHeader(MoSyncNetwork.java:435)
W/System.err( 610): at com.mosync.internal.android.MoSyncThread.maHttpSetRequestHeader(MoSyncThread.java:3063)
W/System.err( 610): at com.mosync.internal.android.MoSyncThread.nativeRun(Native Method)
W/System.err( 610): at com.mosync.internal.android.MoSyncThread.run(MoSyncThread.java:917)
W/dalvikvm( 610): JNI WARNING: JNI method called with exception raised
W/dalvikvm( 610): in Lcom/mosync/internal/android/MoSyncThread;.nativeRun ()V (NewStringUTF)
W/dalvikvm( 610): Pending exception is:
I/dalvikvm( 610): Lcom/mosync/internal/android/BigPhatError;: Error thrown in MYASSERT
I/dalvikvm( 610): at com.mosync.internal.android.MoSyncHelpers.MYASSERT(MoSyncHelpers.java:92)
I/dalvikvm( 610): at com.mosync.internal.android.MoSyncNetwork.getConnectionObject(MoSyncNetwork.java:491)
I/dalvikvm( 610): at com.mosync.internal.android.MoSyncNetwork.maHttpSetRequestHeader(MoSyncNetwork.java:435)
I/dalvikvm( 610): at com.mosync.internal.android.MoSyncThread.maHttpSetRequestHeader(MoSyncThread.java:3063)
I/dalvikvm( 610): at com.mosync.internal.android.MoSyncThread.nativeRun(Native Method)
I/dalvikvm( 610): at com.mosync.internal.android.MoSyncThread.run(MoSyncThread.java:917)
I/dalvikvm( 610): "Thread-8" prio=5 tid=8 NATIVE
I/dalvikvm( 610): | group="main" sCount=0 dsCount=0 s=N obj=0x44e98468 self=0x116988
I/dalvikvm( 610): | sysTid=618 nice=0 sched=0/0 cgrp=default handle=1193960
I/dalvikvm( 610): | schedstat=( 396212948 456832873 424 )
I/dalvikvm( 610): at com.mosync.internal.android.MoSyncThread.nativeRun(Native Method)
I/dalvikvm( 610): at com.mosync.internal.android.MoSyncThread.run(MoSyncThread.java:917)
I/dalvikvm( 610):
E/dalvikvm( 610): VM aborting
I/DEBUG ( 30): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
what will be the problem?
----- code snippets
Main.c
NativeUI::WebView * wView = getWebView();
ratesAvailable = new RateShow(wView, mReq);
if (ratesAvailable == NULL) {
getWebView()->callJS(
"validatePersonalize(false, 'unable to create RateShow')");
}
From RateShow.h
class RateShow: public ConnectionScreenListener, DownloadListener {
public:
RateShow( NativeUI::WebView* View, String Req) :
mwebView(View), request(Req), inConnection(true) {
mConn = NULL;
state = idel;
mwebView->callJS("validatePersonalize(false, 'Creating Conneection Screen')");
lprintfln("Creating Connection Screen\n");
mConn = new ConnectionScreen(mwebView);
lprintfln("Calling Connection start function \n");
mwebView->callJS("validatePersonalize(false, 'Calling Connection start function')");
mConn->start(EXAMPLE_URL, request, this);
imageCounter = 0;
}
...........................
From ConnectionScreen.h
class ConnectionScreen : protected HttpConnectionListener
, XmlListener
, MtxListener
{
public:
ConnectionScreen(NativeUI::WebView* View) : mHttp(this)
,mState(eIdle), mWebView(View)
{
//showInformation();
mPtr = NULL;
mListner = NULL;
mContext = NULL;
mWebView->callJS("validatePersonalize(false, 'In ConnectionScreen Constructor')");
}
...................................