سؤال

وأنا أحاول الحصول على بعض التعليمات البرمجية العاملة التي مطور السابق قد كتب. نعم، غادر الآن الشركة. : - (

ولدي مكالمة RPC JSON التي تبذل من رمز JS. شبيبة جميع يدير على ما يرام وطريقة رد يحصل على الكائن مرة أخرى (وليس كائن الخطأ).

ولكن الطريقة على فئة Java لم يحصل ضرب. طريقة مصلحة الارصاد الجوية لا تحصل على ضرب بالرغم من ذلك.


public String smd()
{
   return SUCCESS; // break point reaches here
}

@SMDMethod
public void updateRowValueForField(String key, String value, String fieldname)
{
   // We never get into this method.
}

<package name="EntryBarRPC" namespace="/" extends="star-default">

    <action name="ebToggleSelection" class="eboggleSelectionAction" method="smd">
        <interceptor-ref name="jsonStack">
            <param name="enableSMD">true</param>
        </interceptor-ref>
        <result type="json">
            <param name="enableSMD">true</param>
        </result>
    </action>
</package>

وأنا الحيرة لماذا، أو ما أنا في عداد المفقودين. لقد قرأت الصفحة المساعد JSON مرارا وتكرارا.

وأعتقد أنني بحاجة فقط مجموعة أخرى من العيون.

ملحوظة: عدم وجود أخطاء في وحدة تحكم القط، لا JS أخطاء

وأي شخص حصل على أي أدلة؟ في صحتك جيف بورتر

هل كانت مفيدة؟

المحلول

وأنت نسيت أن تتضمن شفرة جافا سكريبت. من المثال:

<s:url id="smdUrl" namespace="/nodecorate" action="SMDAction" />
<script type="text/javascript">
    //load dojo RPC
    dojo.require("dojo.rpc.*");

    //create service object(proxy) using SMD (generated by the json result)
    var service = new dojo.rpc.JsonService("${smdUrl}");

    //function called when remote method returns
    var callback = function(bean) {
        alert("Price for " + bean.type + " is " + bean.price);
    };

    //parameter
    var bean = {type: "Mocca"};

    //execute remote method
    var defered = service.doSomething(bean, 5);

    //attach callback to defered object
    defered.addCallback(callback);
</script>

هل أنت متأكد أنك استدعاء service.updateRowValueForField (مفتاح، قيمة، FIELDNAME) وليس شيئا آخر؟

وعلاوة على ذلك، طريقتك بإرجاع الفراغ (على سبيل المثال لا يعود أي شيء). ماذا تتوقع أن تحصل عليه؟

نصائح أخرى

ونسخة جديدة بإصلاح مشاكلي.

جوجل JSON المساعد

وانا التخمين التي تحتاج إلى تحديث طريقة smd() للاتصال الواقع updateRowValueForField() بدلا من مجرد العودة فورا. يبدو المطور سابق أبدا مدمن مخدرات فعليا الطرق.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top