2016-02-29 1 views
0

Dans un service Java, sans déclaration de fonction, un appel de fonction est présent et seule une erreur de compilation survient. Mais la sortie est comme prévu sans erreurs d'exécution. Comment est-ce possible? Quelqu'un peut-il expliquer s'il vous plaît?Java Service Error - webMethods

"La méthode functionName() est indéfinie" est l'erreur qu'elle affiche.

est sous le code.

 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

Quelle version de WebMethods utilisez-vous? Utilisez-vous Designer ou Developer? Etes-vous sûr que le runtime utilise le code dans votre service (confirmez ceci en changeant quelque chose et en voyant si le changement se produit au moment de l'exécution - sinon il peut être en cours d'exécution et en vieux fichier .class)? Pouvez-vous poster le code source? –

+0

J'utilise 9,8 concepteur. Le code est utilisé et uniquement en appelant la fonction, la valeur est affectée à la variable de sortie. Il jette la sortie comme prévu. – Sowndarya

+0

J'ai collé le code. Aide aimablement. – Sowndarya

Répondre

1

Le code mis en ligne a aucune référence à « functionName », donc je suppose qu'il ya une référence à elle soit dans la section de code partagé ou dans un autre service Java dans le même dossier. Étant donné que tous les services Java d'un dossier sont compilés en une seule classe et que, par conséquent, tous ces services doivent être compilés ensemble, cela peut provoquer le message d'erreur lorsque vous compilez le service ci-dessus.