Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Wie kann ich nun aber prüfen, ob der Parameter überhaupt existiert? (Wenn er nicht existiert, soll dann einfach eine fest definierte Zeichenkette anstatt des Value eingesetzt werden.)
Das muss aus der Dokumentation der Methode #GetParam der Klasse von der 'model' ein Instanz ist, hervorgehen. Vermutlich wird entweder null zurückgegeben, wenn der Key nicht gefunden wurde, oder eine Exception geworfen.
Eins ist aber klar: Wer immer die Klasse geschrieben hat, Java ist nicht sein Ding und erkommt womöglich von C#.
Schlussendlich können wir deine Frage nicht definitiv beantworten, da wir aus dem Codefetzen nicht die entsprechenden Infos rauslesen können (Klasse von model, Doku der Methode). Von daher macht das Fragen wenig Sinn
Weil der Entwickler C#-like die Methoden groß schreibt. Außerdem schrieb ich ja, wie du richtig sagst, dass er von C# kommt, nicht dass es sich beim Code um C# handelt (bzgl. Properties)
Weil nicht gesagt ist, dass der Autor der Methode auch 'null' zurückliefert, wenn ein Schlüssel nicht gefunden wurde. Das ist zwar gemeinhin üblich, aber dass es ebenso üblich ist Methodennamen in Java mit einem Kleinbuchstaben zu beginnen, hat ihn auch nicht daran gehindert, es anders zu machen.
Wie schon gesagt, das Abfragen, ob der Parameter vorhanden ist, klappt.
Jetzt will ich noch abfragen, ob der Parameter leer ist, oder einen Value hat - klappt soweit auch, aber nur, wenn der Value vom Typ String ist. Ist der Value vom Typ Double, dann springt mein Code unweigerlich in den else-Zweig.
Code-Beispiel:
Code:
//Parameter menge und ParameterValue menge.value initialisieren - funktioniert!
...
//Abfragen, ob Parameter existiert(true/false) & ob Value Inhalt hat
if ( (menge.GetIsDesignated() == true) & (menge_value != null) ){
menge_fname = new Double(menge_value.GetDoubleValue()).toString();
}
else {
menge_fname = "@@@@@";
}
Wie oben schon gesagt, springt mein Code in den else-Zweig, wenn der Wert vom Typ Double ist. Meine Vermutung ist, dass ich vielleicht Double nicht mit !=null prüfen kann, ob die Variable leer ist?! (ist nur ne Vermutung :roll: )
Ansonsten weiß ich nicht weiter, da der Parameter existiert und einen Value hat.
Weil der Entwickler C#-like die Methoden groß schreibt. Außerdem schrieb ich ja, wie du richtig sagst, dass er von C# kommt, nicht dass es sich beim Code um C# handelt (bzgl. Properties)
Ich weiß! Die ganzen ausgelesenen Values werden dann aber zu einem String, welcher später der Name einer Datei ist, zusammengesetzt. Das funktioniert auch schon. Diese @@@@@ sind quasi die Ersatzlösung, falls mal nix in irgendeinem Value drinsteht bzw. dieser nicht existiert. :wink:
Edit:
als Beispiel:
Code:
String menge_fname;
...
//hier der Code von oben
...
dateiname = menge_fname +"__"+ undsoweiter_fname;