2016-02-29 2 views
0

В службе java, без объявления функции, есть вызов функции, и появляется только ошибка времени компиляции. Но выход такой же, как ожидалось, без ошибок времени выполнения. Как это возможно? Может кто-нибудь объяснить?Ошибка службы Java - webMethods

«Функция functionName() не определена» - это ошибка, которую она показывает.

Ниже приведен код.

 public static final void documentToStringVals(IData pipeline) 
     throws ServiceException { 

    // pipeline 
    IDataCursor pipelineCursor = pipeline.getCursor(); 
    String success = "false"; 
    IData inputDoc = null; 
    String outputValue = ""; 
    String headerYN = "N"; 
    boolean headerValue = false; 
    String delimiter = ","; 
    String newline = System.getProperty("line.separator"); 

    if (pipelineCursor.first("inputDocument")) { 
     inputDoc = (IData) pipelineCursor.getValue(); 
    } 
    else { 
     throw new ServiceException("inputDocument is a required parameter"); 
    } 

    if (pipelineCursor.first("delimiter")) { 
     delimiter = (String) pipelineCursor.getValue(); 
    } 

    if (pipelineCursor.first("headerYN")) { 
     headerYN = (String) pipelineCursor.getValue(); 
    } 
    if (headerYN.equalsIgnoreCase("Y")) { 
     headerValue = true; 
    } 

    try { 

     outputValue = docValuesToString(inputDoc, headerValue, delimiter); 

     outputValue += newline; 
     success = "true"; 
    } 

    catch (Exception e) { 
     System.out.println("Exception in getting string from document: " + e.getMessage()); 
     pipelineCursor.insertAfter("errorMessage", e.getMessage()); 
    } 
    pipelineCursor.insertAfter("success", success); 
    pipelineCursor.insertAfter("outputValue", outputValue); 
    pipelineCursor.destroy(); 
} 
+0

Какую версию WebMethods вы используете? Вы используете Designer или Developer? Вы уверены, что среда выполнения использует код в вашей службе (подтвердите это, изменив что-то и посмотрев, происходит ли изменение во время выполнения - в противном случае это может быть исполняемый файл и старый .class-файл)? Можете ли вы опубликовать исходный код? –

+0

Я использую 9.8 дизайнер. Код используется и только вызывая функцию, значение присваивается выходной переменной. Он выводит результат, как ожидалось. – Sowndarya

+0

Я вставил код. Незлая помощь. – Sowndarya

ответ

1

код вы вывесили не имеет никакого отношения к «functionName», так что я подозреваю, что есть ссылка на него либо в разделе общего кода или в другой службе Java в той же папке. Учитывая, что все Java-сервисы в папке скомпилированы в один класс, поэтому все эти службы необходимо скомпилировать вместе, это может вызвать сообщение об ошибке при компиляции службы выше.

Смежные вопросы