Подтвердить что ты не робот

Элемент Spring <constructor-arg> должен указывать ссылку или значение

У меня проблема с Spring и инсталляцией конструктора. Я хочу создать динамически объекты с именем (String) и специальным id (long).

Но когда загружается spring.xml файл, возникает исключение.

Исключение в потоке "main" java.lang.ExceptionInInitializerError

Вызвано: org.springframework.beans.factory.UnsatisfiedDependencyException: Ошибка при создании bean с именем "someBean", определенным в ресурсе пути пути [spring.xml]: недопустимая зависимость, выраженная через аргумент конструктора с индексом 0 типа [long]: Неоднозначные типы аргументов конструктора. Вы указали правильные ссылки bean как аргументы конструктора?

Мой spring.xml:

    <bean id="someBean" class="someClass" >
        <constructor-arg index="0" type="java.lang.String" value=""/>       
        <constructor-arg index="1" type="long" value=""/>
    </bean>
</beans>

И что там? Конструктор-arg имеет индекс 1 (а не 0, как указано в исключении)

4b9b3361

Ответ 1

В аргументах конструктора вы можете использовать либо примитивный тип long, и значение 0, либо тип оболочки java.lang.Long и пустое значение. Кроме того, чтобы держать вещи под контролем, я бы установил значение второго аргумента явно 0.