Для Spring Social version 1.1.0.RELEASE мне нужно настроить приложение Url для ProviderSignInController, так как мое приложение (приложение Tomcat) размещено за прокси-сервером (Apache-сервером). Согласно с Spring Social document, я поставил его, как показано ниже:Исходное событие Spring Social appURL
<bean id="providerSignInController"
class="org.springframework.social.connect.web.ProviderSignInController">
<property name="signInUrl" value="/accounts/login" />
<property name="signUpUrl" value="/accounts/signup" />
<property name="postSignInUrl" value="/accounts/profile" />
<property name="applicationUrl" value="${applicationUrl}" />
</bean>
Однако при развертывании приложения, я получаю исключение в Tomcat catalina.out говоря:
PropertyAccessException 1:
org.springframework.beans.MethodInvocationException: Property
'applicationUrl' threw exception; nested exception is
java.lang.NullPointerException>org.springframework.beans.factory.BeanCreationException:
Error creating bean with name
'org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping#0'
defined in ServletContext resource [/WEB-INF/spring-servlet.xml]:
Initialization of bean failed; nested exception is
org.springframework.beans.factory.BeanCreationException: Error creating
bean with name 'providerSignInController' defined in ServletContext
resource [/WEB-INF/spring-servlet.xml]: Error setting property values;
nested exception is
org.springframework.beans.PropertyBatchUpdateException; nested
PropertyAccessExceptions (1) are:
PropertyAccessException 1:
org.springframework.beans.MethodInvocationException: Property
'applicationUrl' threw exception; nested exception is
java.lang.NullPointerException
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:527)
Любые предложения, пожалуйста? Благодарю.
Вы уже настроили 'applicationUrl' в своих свойствах? –
Да, как рекомендовано Весенним социальным документом (http://docs.spring.io/spring-social/docs/1.1.0.RELEASE/reference/htmlsingle/#enabling-provider-sign-in-with-code- providerignincontroller-code), значение URL-адреса приложения вытесняется в файле свойств. Кстати, если я не настрою свойство applicationUrl в объявлении поставщика bean providerSignInController, этот компонент может быть создан без проблем. То есть, нет проблем со свойствами signInUrl, signUpUrl и postSignInUrl. – Yuci
Тогда вы могли бы показать нам файл свойств, а также как настроить весну для чтения файла свойств? ну другие свойства (такие как signInUrl, signUpUrl) не имеют проблем, потому что вы устанавливаете это значение напрямую. –