Domanda

Diciamo che voglio dichiarare una funzione che ha questa firma java:

public static String getStatusString(ArticleAndStatus aas) {
    //...
}

e che ArticleAndStatus è una classe interna di org.example.Outer.

Come potrei dichiararlo in un taglib? Questi entrambi falliscono:

   <function>
       ...
       <function-signature>java.lang.String
       getStatusString(org.example.Outer.ArticleAndStatus)
       ...
   </function>
   <function>
       ...
       <function-signature>java.lang.String
       getStatusString(org.example.Outer$ArticleAndStatus)
       ...
   </function>
È stato utile?

Soluzione

Ho lo stesso problema con una classe interna statica pubblica. Direi che la sintassi è il punto. Potrebbe essere un bug nel qui org.apache.jasper.compiler.

Altri suggerimenti

org.example.Outer.ArticleAndStatus

Non puoi solo creare un'interfaccia fittizia, che fate il vostro interno di classe implementare e dare come il parametro del metodo?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top