Seem logic that the callback is called twice ...
- HTML: onload of your frame with a parameter
- GWT: onModuleLoad *without* parameter
On Sat, Nov 15, 2008 at 11:40 AM, Manish Kumar <[EMAIL PROTECTED]> wrote:
>
>
> Hi olivier,
>
> The code i have written as follows :
> public void onModuleLoad()
>
> {
>
> try{ exportStaticMethod(this); }catch(Exception re){
>
> MessageBox.alert(re.getMessage());
>
> }
>
> }
>
>
> public native void exportStaticMethod(PMGWTHtmlUtils pmGWTHtmlUtils)
>
> /*-{
>
>
> $wnd.invokeGWT = function(bId,cId,mId,mName,cName)
>
> {
>
> [EMAIL
> PROTECTED]::invokeGWT(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)(bId,cId,mId,mName,cName);
>
> };
>
>
> if($wnd.callGWTUtils){
>
> $wnd.callGWTUtils();
>
> }
>
>
> }-*/;
>
> public void invokeGWT( String bId,String cId,String mId,String mName,String
> cName ) throws RequestException {
>
> System.out.println( " xxxxxxxxxxxxxxxxxxxxxxxxxxxx :"+ bId);
>
> }
>
> in javascript :
>
> function callGWTUtils( bttnId )
>
> {
>
> alert('xxxxxxxxxxx'+ bttnId);
>
> invokeGWT(
> bttnId,"vvvvvvvvvvvvvvvv","vvvvvvvvvvvvvvvv","vvvvvvvvvvvvvvvv","vvvvvvvvvvvvvvvv"
> );
>
> /*if( currDispId != null ){
>
> invokeGWT( bttnId,currDispId );
>
> }*/
>
> }
>
> Html stuffs:
>
> <html>
>
> <head>
>
>
> <!-- -->
>
> <!-- Any title is fine -->
>
> <!-- -->
>
> <title>PM HTML-GWT Wrapper</title>
>
>
> <!-- -->
>
> <!-- The module reference below is the link -->
>
> <!-- between html and your Web Toolkit module -->
>
> <!-- -->
>
> <meta name='gwt:module'
> content='com.pm.output.html.gwt.model.comment.PMGWTHtmlUtils'></meta>
>
>
> <!-- -->
>
> <!-- Link CSS file -->
>
> <!-- -->
>
> <link type="text/css" rel='stylesheet' href='ExGwtExt.css'></link>
>
>
> <link rel="stylesheet" type="text/css"
> href="js/ext/resources/css/ext-all.css"></link>
>
>
> <link rel="stylesheet" type="text/css"
> href="js/ext/resources/css/xtheme-aero.css"/></link>
>
>
> <script type="text/javascript"
> src="js/ext/adapter/yui/yui-utilities.js"></script>
>
>
> <script type="text/javascript"
> src="js/ext/adapter/yui/ext-yui-adapter.js"></script>
>
>
> <script src="js/sh/shCore.js"></script>
>
>
> <script src="js/sh/shBrushJava.js"></script>
>
>
> <style>
>
> * {
>
> font-family:Courier New,monospace;
>
> padding: 0;
>
> margin: 0;
>
> white-space: nowrap;
>
> font-size: 11px;
>
> }
>
>
> .dp-highlighter
>
> {
>
> white-space: nowrap;
>
> overflow: visible;
>
> width: 600px;
>
> font-size: 11px;
>
> font-family:Courier New,monospace;
>
> }
>
> </style>
>
> </head>
>
>
> <!-- -->
>
> <!-- The body can have arbitrary html, or -->
>
> <!-- we leave the body empty because we want -->
>
> <!-- to create a completely dynamic ui -->
>
> <!-- -->
>
> <body>
>
> <script type="text/javascript" src="js/ext/ext-all.js"></script>
>
>
> <script type="text/javascript" src="js/ext/ext-base.js"></script>
>
> <!-- -->
>
> <!-- This script is required bootstrap stuff. -->
>
> <!-- You can put it in the HEAD, but startup -->
>
> <!-- is slightly faster if you include it here. -->
>
> <!-- -->
>
> <script language="javascript"
> src="com.pm.output.html.gwt.model.comment.PMGWTHtmlUtils.nocache.js"></script>
>
> <script language="javascript" src="js/ext/pmxslutils.js"></script>
>
> <iframe onload="javascript:callGWTUtils('v7')"/>
>
>
> </body>
>
> </html>
>
> Please let us know where i am wrong.
> Regards
>
> Manish
>
>
> ----- Original Message -----
> From: "olivier nouguier" <[EMAIL PROTECTED]>
> To: <[email protected]>
> Sent: Saturday, November 15, 2008 3:43 PM
> Subject: Re: Problem with JSNI call to java method from javascript
>
>
>>
>> On Sat, Nov 15, 2008 at 8:31 AM, Manish Kumar <[EMAIL PROTECTED]>
>> wrote:
>>>
>>> Hi,
>>>
>>> Thanks for your much needed help.
>> U welcome :)
>>> This seems working but it calls the same method twice so my original
>>> value
>>> is lost.
>> Strange could you send me your code ?
>>> Any idea about this.
>>>
>>> Regards
>>> Manish
>>>
>>> ----- Original Message -----
>>> From: "olivier nouguier" <[EMAIL PROTECTED]>
>>> To: <[email protected]>
>>> Sent: Friday, November 14, 2008 10:07 PM
>>> Subject: Re: Problem with JSNI call to java method from javascript
>>>
>>>
>>>>
>>>> hum it should works ... (you don't give the "this" reference" ...
>>>>
>>>> Here a full sample that work :)
>>>>
>>>> ### GWT module
>>>> package test.client;
>>>>
>>>> import com.google.gwt.core.client.EntryPoint;
>>>> import com.google.gwt.user.client.Window;
>>>>
>>>> public class MyModule implements EntryPoint {
>>>>
>>>> public void onModuleLoad() {
>>>>
>>>> init(this);
>>>>
>>>> }
>>>>
>>>> public void gwtFunction(String message) {
>>>> Window.alert(message);
>>>> }
>>>>
>>>> private native void init(MyModule zis) /*-{
>>>>
>>>> $wnd.injectedFunction = function(message){
>>>>
>>>> [EMAIL PROTECTED]::gwtFunction(Ljava/lang/String;)(message)
>>>> }
>>>>
>>>> if($wnd.jsOnload){
>>>> $wnd.jsOnload();
>>>> }
>>>>
>>>> }-*/;
>>>>
>>>> }
>>>>
>>>> ###
>>>>
>>>> ### HTML hosted page ###
>>>> <html>
>>>> <head>
>>>>
>>>> <!-- -->
>>>> <!-- Any title is fine -->
>>>> <!-- -->
>>>> <title>Wrapper HTML for MyModule</title>
>>>>
>>>> <!-- -->
>>>> <!-- Use normal html, such as style -->
>>>> <!-- -->
>>>> <style>
>>>> body,td,a,div,.p{font-family:arial,sans-serif}
>>>> div,td{color:#000000}
>>>> a:link,.w,.w a:link{color:#0000cc}
>>>> a:visited{color:#551a8b}
>>>> a:active{color:#ff0000}
>>>> </style>
>>>>
>>>> <!-- -->
>>>> <!-- This script loads your compiled module. -->
>>>> <!-- If you add any GWT meta tags, they must -->
>>>> <!-- be added before this line. -->
>>>> <!-- -->
>>>> </head>
>>>>
>>>> <!-- -->
>>>> <!-- The body can have arbitrary html, or -->
>>>> <!-- you can leave the body empty if you want -->
>>>> <!-- to create a completely dynamic ui -->
>>>> <!-- -->
>>>> <body>
>>>>
>>>>
>>>> <!-- OPTIONAL: include this if you want history support -->
>>>> <iframe src="javascript:''" id="__gwt_historyFrame"
>>>> style="width:0;height:0;border:0"></iframe>
>>>>
>>>> <script type="text/javascript" language="javascript"
>>>> src="test.MyModule.nocache.js"></script>
>>>> <script type="text/javascript">
>>>> function jsOnload(){
>>>> injectedFunction("Helo");
>>>> }
>>>> </script>
>>>>
>>>> </body>
>>>> </html>
>>>> ###
>>>>
>>>> On Fri, Nov 14, 2008 at 3:37 PM, Manish Kumar <[EMAIL PROTECTED]>
>>>> wrote:
>>>>>
>>>>> Hi olivier,
>>>>>
>>>>> Thanks for your kind help.
>>>>>
>>>>> I tried this , this does not work with the exception
>>>>> Could not find a native method with the signature
>>>>> '@com.pm.output.html.gwt.model.comment.client.PMGWTHtmlUtils::exportStaticMethod()'
>>>>>
>>>>> which was not coming before.
>>>>>
>>>>> Please let us know where am I conceptually wrong.If anybody have
>>>>> alternative
>>>>> idea , plz pass it.
>>>>>
>>>>> Regards
>>>>> Manish
>>>>>
>>>>>
>>>>> ----- Original Message -----
>>>>> From: "olivier nouguier" <[EMAIL PROTECTED]>
>>>>> To: <[email protected]>
>>>>> Sent: Friday, November 14, 2008 7:36 PM
>>>>> Subject: Re: Problem with JSNI call to java method from javascript
>>>>>
>>>>>
>>>>>>
>>>>>> Hi,
>>>>>> I suspect (?) that your js code is call to soon ...
>>>>>> The GWT is not yet initialized
>>>>>>
>>>>>> Please try this:
>>>>>> ### GWT patch ###
>>>>>> static
>>>>>> native void exportStaticMethod()
>>>>>> /*-{
>>>>>> $wnd.invokeGWT = function(bId,cId,mId,mName,cName){
>>>>>> [EMAIL
>>>>>> PROTECTED]::invokeGWT(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)
>>>>>> (bId,cId,mId,mName,cName);
>>>>>> };
>>>>>> // Lazy call to onLoad
>>>>>> if($wnd.my_onload){
>>>>>> $wnd.my_onload();
>>>>>> }
>>>>>> }-*/
>>>>>> ;
>>>>>> ### JS Patch in HTML page ####
>>>>>> // This function will be called by GWT module.
>>>>>> function my_onload(){
>>>>>> invokeGWT(
>>>>>> "vvvvvvvvvvvvvvvv","vvvvvvvvvvvvvvvv","vvvvvvvvvvvvvvvv","vvvvvvvvvvvvvvvv","vvvvvvvvvvvvvvvv"
>>>>>> );
>>>>>> }
>>>>>>
>>>>>> By doing this the invokeGWT is call after the module initialise.
>>>>>>
>>>>>> HIH
>>>>>>
>>>>>> --
>>>>>> Si l'ignorance peut servir de consolation, elle n'en est pas moins
>>>>>> illusoire.
>>>>>>
>>>>>> >
>>>>>
>>>>>
>>>>> >
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Si l'ignorance peut servir de consolation, elle n'en est pas moins
>>>> illusoire.
>>>>
>>>> >
>>>
>>>
>>> >
>>>
>>
>>
>>
>> --
>> Si l'ignorance peut servir de consolation, elle n'en est pas moins
>> illusoire.
>>
>> >
>
>
> >
>
--
Si l'ignorance peut servir de consolation, elle n'en est pas moins illusoire.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Google Web Toolkit" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/Google-Web-Toolkit?hl=en
-~----------~----~----~----~------~----~------~--~---