Ich habe Soap-Service mit Apache CXF erstellt, ich habe einen @ WebService erstellt. In diesem Service muss ich den @ Service injizieren. Wenn ich @Autowire diesen Dienst installiere, bleibt diese Null.Spring + Apache CXF @Autowire im Dienst immer Null
Endpoint initialisiert
@Bean
public Endpoint endpointToken() {
EndpointImpl endpoint = new EndpointImpl(bus, new GenerateLoginToken());
endpoint.publish("/Token");
return endpoint;
}
Serivce Klasse
@WebService(serviceName = "GenerateToken", portName = "TokenPort",
targetNamespace = "http://service.ws.samp",
endpointInterface = "com.web.sigel.ws.soap.webServices.GenerateToken")
@Service("AuthService")
public class GenerateLoginToken implements GenerateToken {
@Autowired
private AuthService authService; //this remains Null whenever i make a call.
@Override
@RequestWrapper(localName = "loginRequest", targetNamespace = "http://service.ws.samp", className = "com.web.sigel.ws.soap.security.LoginRequest")
public LoginResponse generateToken(LoginRequest loginRequest) {
LoginResponse loginResponse = new LoginResponse();
String token = authService.createAuthToken(loginRequest);
loginResponse.setToken(token);
return loginResponse;
}
}
Gibt es trotzdem, ich meine Service injizieren kann.
Können Sie Ihre AuthService Klasse zeigen? – Plog
// @ Komponente öffentliche Klasse AuthService { //// @Autowired privater AuthenticationManager authenticationManager; // @ Autowired private UserDetailsService userDetailsService; // @ Autowired privater TokenService generateToken; } –