Досадно - Предупреждение при использовании Mina 2.x с Spring 3.x - PullRequest
3 голосов
/ 07 сентября 2010

Кто-нибудь знает хороший способ избавиться от этого предупреждения, кроме увеличения уровня журнала? Имейте в виду, что все на сервере все еще работает, как и ожидалось, но это происходит каждый раз, когда сервер перезапускается.

o.s.b.f.c.CustomEditorConfigurer - Passing PropertyEditor instances into CustomEditorConfigurer is deprecated: use PropertyEditorRegistrars or PropertyEditor class names instead. Offending key [java.net.SocketAddress; offending editor instance: org.apache.mina.integration.beans.InetSocketAddressEditor@314585

Сервер Red5 использует Apache Mina 2.0 и Spring 3.0.4, но предупреждение появляется начиная с Spring 2.5 или около того.

1 Ответ

4 голосов
/ 07 сентября 2010

Я предполагаю, что у вас, вероятно, есть что-то подобное в XML-файле Spring:

<bean class="org.springframework.beans.factory.config.CustomEditorConfigurer">
    <property name="customEditors">
        <map>
            <entry key="java.net.SocketAddress">
                <bean class="org.apache.mina.integration.beans.InetSocketAddressEditor" />
            </entry>
        </map>
    </property>
</bean>

Как говорится в предупреждении, передача PropertyEditor экземпляров в CustomEditorConfigurer не рекомендуется.Однако вместо этого можно использовать PropertyEditor имена классов.

Подробнее об этом можно прочитать в Javadoc для CustomEditorConfigurer.

Простое исправление в вашем случаеиспользовать имя класса в качестве значения записи карты вместо экземпляра InetSocketAddressEditor:

<bean class="org.springframework.beans.factory.config.CustomEditorConfigurer">
    <property name="customEditors">
        <map>
            <entry key="java.net.SocketAddress" value="org.apache.mina.integration.beans.InetSocketAddressEditor" />
        </map>
    </property>
</bean>
...