2015-04-06 70 views
0

我創建了一個HTTP適配器來調用過程以添加2個數字。它是發送輸入並顯示輸出的基本程序。以下是我的代碼。在IBM Worklight中運行HTTP適配器時出錯

HTML:

First Integer: <input type="text" id="firstint"/> 
Second Integer: <input type="text" id="secondint"/> 
<input type="button" onclick="submitInput()" value="Submit"/> 

DemoHTTPAdapter-impl.js:

function submitInput() { 
     var invocationData = { 
      adapter : 'DemoHTTPAdapter', 
      procedure : "getDemoAdd", 
      parameters : [$('#firstint').val(),$('#secondint').val()] 
     }; 

     var options = { 
      onSuccess : success, 
      onFailure : failure 
     }; 

     WL.Client.invokeProcedure(invocationData, options); 
    } 

function getDemoAdd(firstint, lastint) { 
    return { 
     result : com.ibm.demo.DemoAdd.addTwoInteger(firstint,secondint) 
    } 
} 

的步驟通過如下一個Java代碼在DemoAdd.java調用:

package com.ibm.demo; 
import java.util.logging.Logger; 

public class DemoAdd { 
    private static final Logger logger = Logger.getLogger(DemoAdd.class.getName()); 

public static int addTwoInteger(int afirstInt, int aSecondInt) {   
    logger.info("Add Method Invoked with Parameter " + afirstInt + " & " + aSecondInt); 
    return (afirstInt + aSecondInt); 
} 

我是當我運行html時出現錯誤。

submitInput()未定義。

而我已經定義了submitInput()方法。

回答

0

您已將submitInput函數放入適配器實現文件(DemoHTTPAdapter-impl.js)中,而不是放在常用的\ js \ main.js文件中。

您需要區分駐留在Worklight Server上的適配器作用域並因此不能直接調用它,直接駐留在應用程序本身中的應用程序作用域。

由於它們的作用域不同,解析器試圖找到submitInput,但無法找到它。

應用程序的JavaScript需要調用Worklight框架,以便將請求發送到服務器以調用適配器。

將下面的代碼到你的main.js:

function submitInput() { 
    var invocationData = { 
     adapter : 'DemoHTTPAdapter', 
     procedure : "getDemoAdd", 
     parameters : [$('#firstint').val(),$('#secondint').val()] 
    }; 

    var options = { 
     onSuccess : success, 
     onFailure : failure 
    }; 

    WL.Client.invokeProcedure(invocationData, options); 
} 
+0

您好,感謝您的答覆!我有問題顯示適配器的值。就像,如果我想在我的HTML中顯示來自java代碼的整數的加法。做這個的最好方式是什麼? – tb123 2015-04-08 10:13:05

+0

首先在您的應用程序中糾正上述基本缺陷,然後將此問題標記爲已回答,因爲您的評論與此處詢問的問題無關。然後,首先搜索堆棧溢出,因爲如何在應用程序中顯示適配器的結果的問題已被問及很多時間。 – 2015-04-08 10:15:24

相關問題