Класс Owasp ESAPI не обнаруживается как боб весной

Я использую библиотеку ESAPI для кодирования переменной имени в своем коде. И мой проект реализован весной.

ESAPI.encoder().encodeForSQL(новый OracleCodec(), имя);

    import org.owasp.esapi.ESAPI;
import org.owasp.esapi.codecs.Codec;
import org.owasp.esapi.codecs.MySQLCodec;
import org.owasp.esapi.reference.DefaultEncoder;
    import org.springframework.jdbc.core.support.JdbcDaoSupport;

    public class StringJdbcDao extends JdbcDaoSupport{


    public void execute(){
            BufferedReader r = new BufferedReader(new InputStreamReader(sqlDDL));
                        try {
                            // read the first line, skipping any '--' comment lines
                            boolean firstLine = true;
                            StringBuffer buf = new StringBuffer();
                            for (String line = r.readLine(); line != null; line = r.readLine()) {
                                **line = ESAPI.encoder().encodeForSQL(new MySQLCodec(MySQLCodec.MYSQL_MODE), line.trim());**
                                getSpringJdbcTemplate().execute(line);
    }
    }

Я получаю следующую ошибку.

org.springframework.beans.factory.BeanCreationException: ошибка при создании bean-компонента с именем «org.sakaiproject.genericdao.test.GenericDaoTarget», определенным в ресурсе пути к классу [spring-jdbc.xml]: не удалось вызвать метод инициализации; вложенным исключением является org.springframework.beans.factory.BeanInitializationException: инициализация DAO не удалась; вложенным исключением является org.owasp.esapi.errors.ConfigurationException: класс java.lang.reflect.InvocationTargetException SecurityConfiguration (org.owasp.esapi.reference.DefaultSecurityConfiguration) CTOR выдал исключение. в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1338) в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473) в org.springframework.beansfactory.beans .support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409) в java.security.AccessController.doPrivileged(собственный метод) в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380) в org. springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264) в org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) в org.springframework.beans.factory.support .AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261) в org.s pringframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)


person Niranga Sandaruwan    schedule 27.07.2017    source источник
comment
Вы не показали код, который вы используете для настройки Spring для использования библиотеки. Кроме того, было бы гораздо разумнее переписать SQL для использования PreparedStatements, чем использовать кодировщик SQL.   -  person avgvstvs    schedule 27.07.2017
comment
@avgvstvs я редактирую вопрос и добавляю свой код.   -  person Niranga Sandaruwan    schedule 28.07.2017
comment
@avgvstvs я использую SpringJdbcTemplate не PreparedStatements   -  person Niranga Sandaruwan    schedule 28.07.2017
comment
stackoverflow.com/q/15113610/557153   -  person avgvstvs    schedule 28.07.2017
comment
Я рассмотрю ваш вопрос, когда вернусь домой. А пока эта ссылка должна показать вам, как сделать подготовленный оператор с помощью шаблона spring jdbc.   -  person avgvstvs    schedule 28.07.2017
comment
Да, код, который у вас здесь, находится именно там, где вы его создаете. Я не вижу, что вы сделали для настройки внедрения зависимостей для класса ESAPI.   -  person avgvstvs    schedule 28.07.2017
comment
Я больше ничего не делал. Просто вызываю ESAPI.encoder().encodeForSQL. Я хочу знать, как настроить внедрение зависимостей для ESAPI. Объясните свое решение общим примером. Я хочу знать, какой класс внешней библиотеки вызывается как зависимость который не помечен как тип весенней фасоли.   -  person Niranga Sandaruwan    schedule 03.08.2017
comment
@avgvstvs Я отредактировал вопрос.   -  person Niranga Sandaruwan    schedule 03.08.2017
comment
Правка не помогла. dzone.com/articles/dependency-injection-an-introd   -  person avgvstvs    schedule 09.08.2017