Duvida em metodo

Pessoal,
Estou fazendo manutenção em um sistema e nao reta final ou seja, na hora de inserir a ordem de servico e finalizar o processo esta gerando um erro ! So que eu nao entendi mto bem o que significa essa linha de código, nao fui eu quem fiz !
Segue abaixo o metodo e o erro

public void efetivarAnaliseTss(HttpSession session, DynaValidatorForm dynaForm) throws Exception {

ListaCampos listaCampos = null;
String dataPrevistaInstalacao = null;
String novaDataInstalacao = null;

try {
// lista de campos do staffware
listaCampos = (ListaCampos) session.getAttribute(StaffRequestProcConstantes.CAMPOS_STAFFWARE);

dataPrevistaInstalacao = DateUtil.getInstance().toString(listaCampos.getDate("FI006140"));
[b]dataPrevistaInstalacao = dataPrevistaInstalacao == null ? "" : dataPrevistaInstalacao;[/b]

novaDataInstalacao = (String) dynaForm.get("novaDataInstalacao");

if ((novaDataInstalacao == null) || (novaDataInstalacao.equals(""))) {

listaCampos.set("FI006028", "A");

} else {

if (dataPrevistaInstalacao.equals(novaDataInstalacao)) {
listaCampos.set("FI006028", "A");

} else {

listaCampos.set("FI006028", "D");
listaCampos.set("FI006140", DateUtil.getInstance().toDate(novaDataInstalacao));
}

}

} catch (Exception e) {
e.printStackTrace();

throw new Exception("Erro ao efetivar Análise TSS, " + e);
}
}

A linha en negrito eu nao entendi o que esta fazendo !

Já o erro é esse

Alguem tem ideia do que esta errado ?
valew

marsola2k qual linha em negrito ?

Achei que tivesse marcado !
rsr

dataPrevistaInstalacao = dataPrevistaInstalacao == null ? "" : dataPrevistaInstalacao;

falo

Intao marsola2k pelo que eu intendi é uma verificação, se dataPrevistaInstalacao for igual a null a variavel recebe " ", senão recebe o valor da variavel dataPrevistaInstalacao que foi carregada na linha de cima…

[quote=marsola2k]Achei que tivesse marcado !
rsr

dataPrevistaInstalacao = dataPrevistaInstalacao == null ? "" : dataPrevistaInstalacao;

falo[/quote]

Está na hora de estudar o operador ternário, “?”

A tradução do código acima é:

if (dataPrevistaInstalacao == null) {
    dataPrevistaInstalacao = "";
} else {
    dataPrevistaInstalacao = dataPrevistaInstalacao;
}

No seu caso específico o código acima é meio “cabrito” mesmo. Era melhor ele ter usado um if, aí economizava essa atribuição inútil (dataPrevistaInstalacao = dataPrevistaInstalacao).
Mas o operador ternário é muito útil - como tudo na vida, é preciso saber usar.

Um pouquinho de estudo e recordação faz bem para todos !

Mas valew pela dica ! Vou procurar saber mais !!

falo