General Interface is an open source project hosted by the Dojo Foundation

FATAL error while jsx3.app.Server.paint()

FATAL error while jsx3.app.Server.paint()

Postby giUser1 » Tue Jun 29, 2010 4:06 pm

I'm using tibco GI 3.8.1.
My application works fine in IE but there is problem in Firefox. I found a solution by setting the DOCTYPE at the top of a html page as following.
"<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">" .

To my suprise, this causes problem while painting components in IE. The error comes from JSX30.js
at line:
// 5. Paint
...
objApp._server.paint(componentJob.getXML());
...

Is there an easy way to fix this bug?

Thanks ahead,

giUser1
giUser1
2-Stars
2-Stars
 
Posts: 39
Joined: Mon Dec 14, 2009 11:08 am

Re: FATAL error while jsx3.app.Server.paint()

Postby giUser1 » Tue Jun 29, 2010 4:19 pm

In fact, any DOCTYPE, either 'strict' or 'loose', or 'frameset' will cause FATA error in IE. (IE verison 8.06)

But Luke Birdeau has a comment about this before at: http://www.tibcommunity.com/message/6944#6944

How that works?


giUser1
giUser1
2-Stars
2-Stars
 
Posts: 39
Joined: Mon Dec 14, 2009 11:08 am

Re: FATAL error while jsx3.app.Server.paint()

Postby dhwang » Tue Jun 29, 2010 6:03 pm

I'm able to launch GI Builder in IE8 with the doctype inserted.

So I suspect it's something in the components you're using...Do you have any HTML in the text prorperty of Block?

Attached
Attachments
GI_Builder_loose.html.zip
(680 Bytes) Downloaded 5 times
User avatar
dhwang (Darren Hwang)
GI Committer
GI Committer
 
Posts: 224
Joined: Thu Jun 04, 2009 10:09 am
Location: Palo Alto

Re: FATAL error while jsx3.app.Server.paint()

Postby giUser1 » Wed Jun 30, 2010 9:43 am

The attachment won't work for me. My GI_Builder.html block at the end of loading with "<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/DTD/loose.dtd">" (Loading Builder Plug-ins...),but works without it.

<html>
<head>
<title>@gi.productname.text@</title>
</head>
<body BGCOLOR="#9898a5" SCROLL="no" style="position:absolute;width:100%;height:100%;left:0px;top:0px;padding:0px;margin:0px;border:0px;overflow:hidden;">
<div id="jsxmain" style="position:absolute;left:0px;top:0px;width:100%;height:100%;">
<script type="text/javascript" src="JSX/js/JSX30.js"
jsxapppath="GI_Builder/"
jsxmanualhome="true"
>
</script>
</div>
</body>
</html>
giUser1
2-Stars
2-Stars
 
Posts: 39
Joined: Mon Dec 14, 2009 11:08 am

Re: FATAL error while jsx3.app.Server.paint()

Postby giUser1 » Wed Jun 30, 2010 10:22 am

Hi dhwang,

A GI project need a 'Initial Component' and a 'onLoad Script'. The javascript function put in 'onLoad Script' can't be loaded if with the DOCTYPE setting.

Without that function in 'onLoad Script', initial component can be loaded successfully.

Debug found the exception ('undefined') from Server.js (GI 3.8.1 src) :

try {
//initialize the on load script now that all files, includes, and object sets have been loaded
this.eval("ABC()");
} catch (e) {
LOG.fatal(jsx3._msg("serv.err_onload", this), jsx3.NativeError.wrap(e));
}

ABC() is a defined javascript function put in field 'onLoad Script' in GI_Bulder.
giUser1
2-Stars
2-Stars
 
Posts: 39
Joined: Mon Dec 14, 2009 11:08 am

Re: FATAL error while jsx3.app.Server.paint()

Postby dhwang » Fri Jul 02, 2010 11:43 am

hm.. you mean that your project has a onLoad script and it is not defined when Builder loads? Sorry I'm a little fuzzy.

Anyway, I don't think you were asking about Builder in the initial post, right? I was just using builder.html as a test case.

So if the onLoad script is ending up with a function that is yet undefined. You may want to put the call to your ABC function either in your main logic.js (if you call ABC(); as the last line in logic.js, it is most likely to be after you have defiine function ABC() ) or you could put the call to ABC() inside the onBeforeDeserialize section of your main component XML.

IOW, there's at least 2 other places you can place your initialization call to ABC() other than onLoad.
User avatar
dhwang (Darren Hwang)
GI Committer
GI Committer
 
Posts: 224
Joined: Thu Jun 04, 2009 10:09 am
Location: Palo Alto

Re: FATAL error while jsx3.app.Server.paint()

Postby giUser1 » Tue Jul 06, 2010 9:29 am

you're right. My questionis is my project works fine without
"<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/DTD/loose.dtd">" ,
but onload script fail to be loaded if put above line in HTML. The exception is from Server.js.
giUser1
2-Stars
2-Stars
 
Posts: 39
Joined: Mon Dec 14, 2009 11:08 am


Return to GI Developers

Who is online

Users browsing this forum: No registered users and 0 guests

cron