2012-04-22 5 views
0

У меня есть bean A, который возвращает атрибут как char [] и другой компонент, который ожидает атрибут как String, и я хотел бы добавить атрибут из bean A в bean B.char [] to String Conversion in Spring configuration

Когда я делаю это:

<bean id="B" class="...."> 
     <property name="password" value="#{A.password}" /> 
    </bean> 

    <bean id="A" class="..."> 
    </bean> 

ошибки я получаю:

Невозможно преобразовать значение типа [символ []] для требуемого типа [java.lang.String] свойство " password ': не найдено подходящих редакторов или стратегия конверсии

Любая идея, как решить эту проблему?

Возможно, используя синтаксис языка выражения?

Возможно, зарегистрировав какой-то конвертер, например org.springframework.beans.propertyeditors.CharArrayPropertyEditor, в настройке перед введением атрибута char []?

+3

насчет ' "# {новый java.lang.String (A.password)}"'? –

+0

Умм не думал, что я должен признать, и, похоже, он работает. Если вы отвечаете на мой вопрос правильно, а не как комментарий, я с удовольствием принимаю это как решение и вознаграждаю вас точками :) – Joly

ответ

1

Похоже, что это будет работать:

<property name="password" value="#{new java.lang.String(A.password)}" />