java方法返回为null_Java函数返回null

我试图开发一个函数,返回一个字符串,如果结果成功与否

这里是我的功能:

public String addAssistanceRecord(Date dateCreation, BigDecimal dureeAssistance, String etatAssistance,

String idAssistance, String ingAff, String ouvertPar, String sujetAss, String dep,String client,String idContrat) {

Assistance assistance = new Assistance();

assistance.setClient(client);

assistance.setDateCreation(dateCreation);

assistance.setDep(dep);

assistance.setDureeAssistance(dureeAssistance);

assistance.setIngAff(ingAff);

assistance.setOuvertPar(ouvertPar);

assistance.setSujetAss(sujetAss);

assistance.setIdAssistance(idAssistance);

assistance.setEtatAssistance(etatAssistance);

//setting the contratid explicitly

Contrat contrat = new Contrat();

contrat.setIdContrat(idContrat);

assistance.setContrat(contrat);

//persist the assistance object data to ASS table

Contrat con1 =assistance.getContrat();

String idCon= con1.getIdContrat();

// System.out.println("id contrat "+ idCon);

Query query =

em.createQuery("SELECT a from Contrat a where a.idContrat =:id");

query.setParameter("id", idCon);

Contrat con2 = (Contrat) query.getSingleResult();

em.persist(assistance);

// System.out.println("id contrat 2 "+ con2.getIdContrat());

//System.out.println("nb jr contrat 2 "+ con2.getNbJours());

BigDecimal nbJours = con2.getNbJours();

BigDecimal sldj =con2.getSoldeJours();

int monSolde;

if(sldj==null){

monSolde =0;

}

else {

monSolde=(con2.getSoldeJours()).intValueExact();

}

int monAssistance= (assistance.getDureeAssistance()).intValueExact();

System.out.println("mon Solde est "+monSolde);

System.out.println("ma durée est "+monAssistance);

if((monSolde - monAssistance > 0) ){

if(monSolde==0){

nbJours = nbJours.subtract(assistance.getDureeAssistance());

con2.setSoldeJours(nbJours);

em.merge(con2);

return "success";

}

else{

nbJours = sldj.subtract(assistance.getDureeAssistance());

con2.setSoldeJours(nbJours);

em.merge(con2);

return "success";

}

}

else {

return "daddaaa";

}

}这里我比较的情况((monSolde - monAssistance> 0))

在这里我的功能在我的托管bean

public String Verification() {

oracle.binding.BindingContainer bindings = getBindings();

OperationBinding operationBinding = bindings.getOperationBinding("addAssistanceRecord");

Object result = operationBinding.getResult();

System.out.println("## Result = " + result);

if (result == "success") {

String messageText = "Votre Consommation du contrat est ajouté avec succès";

FacesMessage fm = new FacesMessage(messageText);

fm.setSeverity(FacesMessage.SEVERITY_FATAL);

FacesContext context = FacesContext.getCurrentInstance();

context.addMessage(null, fm);

return null;

}

else

{

String messageText = "Impossible d'ajouter cette consommation: la durée d'assistance est inférieure a celle du contrat choisi";

FacesMessage fm = new FacesMessage(messageText);

fm.setSeverity(FacesMessage.SEVERITY_FATAL);

FacesContext context = FacesContext.getCurrentInstance();

context.addMessage(null, fm);

return null;

}

}当我执行我的函数时,它会正确执行所有的工作,但函数(Verification)总是返回null

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值