Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java后端正确(快速)检查参数_Java_Rest_Jakarta Ee_Error Handling_Ejb - Fatal编程技术网

在Java后端正确(快速)检查参数

在Java后端正确(快速)检查参数,java,rest,jakarta-ee,error-handling,ejb,Java,Rest,Jakarta Ee,Error Handling,Ejb,我正在结合EJB3.1使用Mybatis开发一个CRUD应用程序。这些EJB由JAX-RSWeb服务调用 在JAX中,我(显然)必须在调用ejb之前检查参数的正确性 我在做一些事情,比如: int codiCli = req.getParameter("codiCli") != null ? new Integer( req.getParameter("codiCli")).intValue() : 0; int codiIndirizzo = req.getParameter("cod

我正在结合EJB3.1使用Mybatis开发一个CRUD应用程序。这些EJB由JAX-RSWeb服务调用

在JAX中,我(显然)必须在调用ejb之前检查参数的正确性

我在做一些事情,比如:

int codiCli = req.getParameter("codiCli") != null ? new Integer(
    req.getParameter("codiCli")).intValue() : 0;
int codiIndirizzo = req.getParameter("codiIndirizzo") != null ? new Integer(
    req.getParameter("codiIndirizzo")).intValue() : 0;
String indirizzo1 = req.getParameter("indirizzo1") != null ? req.getParameter("indirizzo1") : "";
if (codiCli <= 0 || !isValid(indirizzo1) || !isValid(localita) ) {
    response = this.createJsonErrorResp("updateIndirizzo", 1, 1002, "Parameters error").toString();
} else {
    try {
        InitialContext initialContext = new InitialContext();
        Object serviceObj = initialContext.lookup("java:comp/env/ejb/MngClientiDAOService");
        MngClientiDAOServiceRemote service = (MngClientiDAOServiceRemote) javax.rmi.PortableRemoteObject
                                .narrow((org.omg.CORBA.Object) serviceObj, MngClientiDAOServiceRemote.class);
        // ...
       }
     //... 
}
int codiCli=req.getParameter(“codiCli”)!=无效的新整数(
requ.getParameter(“codiCli”)).intValue():0;
int codiIndirizzo=req.getParameter(“codiIndirizzo”)!=无效的新整数(
req.getParameter(“codiIndirizzo”).intValue():0;
字符串indirizzo1=req.getParameter(“indirizzo1”)!=无效的req.getParameter(“indirizzo1”):“”;

如果(codiCli您可以使用Bean验证来执行参数验证。请参阅:

如果您使用的是JAX-RS Web服务,则可以通过将请求参数放入类似bean的
User
bean中来验证请求参数,如下例所示:

@POST
@Consumes("application/xml")
public void registerUser(@Valid User user) {
    ...
}
更多示例如下:

如果您有更复杂的情况,也可以使用自定义验证器-请参阅实现
ConstraintValidator
接口的示例