java-WebSocket中无法注入service
@Configuration
@EnableWebMvc
@EnableWebSocket
@ServerEndpoint(value = "/webSocket")
public class WebSocketServer {
/*@Autowired
private WebSocketConfig aaa;*/
/**
* 当连接建立成功的时候触发
*
* @param session
*/
@Resource
private IPhoneService phoneService;
/* private IPhoneService phoneService;
public void setIPhoneService(IPhoneService phoneService){
this.phoneService=phoneService;
}*/
@OnOpen
public void onOpen(Session session) {
logger_.info("Web-socket session " + session.getId() + " connected.");
try {
for (Session sess : session.getOpenSessions()) {
sess.getBasicRemote().sendText("Session " + session.getId() + " 加入连接 ");
}
} catch (Exception e) {
}
}
/**
* 当接收到消息的时候触发
*
* @param message
* @param session
*/
@SuppressWarnings("static-access")
@OnMessage
public void onMessage(String message, Session session) {
logger_.info("Received message: '" + message + "'. from session: "
+ session.getId() + ". Thread ID: "
+ Thread.currentThread().getId());
try {
// 延迟发送消息
Thread.currentThread().sleep(StaticValues.REFRESH_TIME);
// 向前台发送消息
for (Session sess : session.getOpenSessions()) {
if (session == null) {
return;
}
/* ApplicationContext ac = new ClassPathXmlApplicationContext("spring/mvc.xml");//新加1
AutowireCapableBeanFactory factory = ac.getAutowireCapableBeanFactory();
EmbedDaoImpl bean = factory.createBean(EmbedDaoImpl.class);*/
System.out.println(phoneService);
sess.getBasicRemote().sendText(session.getId() + ": " + message);
}
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 当关闭的时候触发
*
* @param session
* @param closeReason
*/
@OnClose
public void onClose(Session session, CloseReason closeReason) {
logger_.info("Web-socket session " + session.getId()+ " closed, reason: " + closeReason.toString());
}
/**
*
*/
private Logger logger_;
/**
* 日志
*/
public WebSocketServer() {
logger_ = Logger.getLogger(this.getClass().getName());
}
}
@autowiredy也不行 ,求助啊,这个类的包已经扫描了,而且包下面其他的类中都能注入,只有这个类里面是null