猿问

简单的 ESAPI 目录路径验证示例不起作用

我已经构建了一个 ESAPITestValidator 类,如下所示:


public class ESAPITestValidator {


Validator instance = ESAPI.validator();

ValidationErrorList errors = new ValidationErrorList();

File parent = null;

String path = new String("");

boolean status = false;

public boolean testGetValidDirectoryPath(String inputPath,String context)  

 {

     try

     {

        parent = new File(inputPath).getParentFile().getCanonicalFile();

        //String parent = ESAPI.securityConfiguration().getResourceFile("ESAPI.properties").getParentFile().getCanonicalPath();

        path = instance.getValidDirectoryPath(context, inputPath, parent, true, errors);

        status = true;

        return status;

     }catch(Exception exception)

     {

         exception.printStackTrace();

         status= false;  

     }

     return status;

 }


}

现在我正尝试从主类调用 testGetValidDirectoryPath() ,如下所示:


public class HelloWorld {



public static void main(String[] args) {

    ESAPITestValidator obj =  new ESAPITestValidator();

    if ( obj.testGetValidDirectoryPath("C:\\Users\\1730176\\Downloads","C:\\Users") )

      System.out.println("Success");

    else

      System.out.println("Failure");        

 }


}


慕丝7291255
浏览 598回答 1
1回答

慕虎7371278

JVM 正在寻找javax/servlet/http/HttpServletRequest类,而您还没有将它加载到类路径中。请记住,ESAPI 是一个基于 Web 的库,如果您克隆实际的 esapi-java-legacy 项目并在那里进行单元测试,您可能会更轻松地进行测试。
随时随地看视频慕课网APP

相关分类

Java
我要回答