解决方案 »

  1.   

    userService、tel、 password确定这三个变量都不为NULL?
      

  2.   

    是不是调之前没set ,还是其他参数是null?
      

  3.   


    我发现了  ,userService为空,请问我该怎么做呢?  大神解释哈
      

  4.   

    我发现了 userService为null,请问我在引用的时候,该怎么用,它才不为null?   求帮忙
      

  5.   

    一眼看出userService为null,调用前请注入
      

  6.   

    1  定义AndroidUtil 这个bean时,注入userService
    2  直接private UserService userService = new UserService 的实现
      

  7.   


    3、spring配置自动注入  具体配置http://yangjian-tongxue.blog.163.com/blog/static/1075809322013761263416/
      

  8.   

           我SSH不怎么了解  老大,你这是说的是这两个方法?  还是两步?
      

  9.   

    建议打个断点调试,找到为null对象就好办了
      

  10.   


    我发现了  ,userService为空,请问我该怎么做呢?  大神解释哈调用checkUser之前需要给AndroidUtil设置一个userService对象!
      

  11.   

    两个方法,直接看第二个方法,直接new UserServiceImpl 将UserServiceImpl 换为具体的UserService的实现类就可以了
      

  12.   

    两个方法,直接看第二个方法,直接new UserServiceImpl 将UserServiceImpl 换为具体的UserService的实现类就可以了
    老大,刚刚学校里面断网了    那我按照你的方法做了,但是UserServiceImpl 中在获取当前session时又报空指针,@Service
    @SuppressWarnings("unchecked")
    public class UserServiceImpl extends BaseDaoImpl<User> implements UserService{
    public List<User> checkUser(String tel, String password) {
    System.out.println("执行到UserServiceImpl了,后面又报空指针");
    System.out.println("执行到UserServiceImpl了,后面又报空指针"+getSession());
    return getSession().createQuery(//
    "FROM User u WHERE u.tel=? and u.password=?")//
    .setParameter(0, tel).setParameter(1, password)
    .list();
    }
    }
      

  13.   

    两个方法,直接看第二个方法,直接new UserServiceImpl 将UserServiceImpl 换为具体的UserService的实现类就可以了@Transactional
    @SuppressWarnings("unchecked")
    public abstract class BaseDaoImpl<T> implements BaseDao<T> { @Resource
    private SessionFactory sessionFactory;    
    protected Class<T> clazz; // 这是一个问题! public BaseDaoImpl() {
    // 通过反射得到T的真实类型
    ParameterizedType pt = (ParameterizedType) this.getClass().getGenericSuperclass();
    this.clazz = (Class) pt.getActualTypeArguments()[0]; System.out.println("clazz = " + clazz.getName());
    } public void save(T entity) {
    getSession().save(entity);
    } public void update(T entity) {
    getSession().update(entity);
    } public void delete(Long id) {
    Object obj = getSession().get(clazz, id);
    getSession().delete(obj);
    } public T getById(Long id) {
    return (T) getSession().get(clazz, id);
    } public List<T> getByIds(Long[] ids) {
    if (ids == null || ids.length == 0) {
    return Collections.EMPTY_LIST;
    } return getSession().createQuery(//
    "FROM " + clazz.getSimpleName() + " WHERE id IN(:ids)")//
    .setParameterList("ids", ids)//
    .list();
    }
    public List<T> findAll() {
    return getSession().createQuery(//
    "FROM " + clazz.getSimpleName())//
    .list();
    } /**
     * 获取当前可用的Session
     * 
     * @return
     */
    protected Session getSession() {
    return sessionFactory.getCurrentSession();
    }}  这是BaseDaoImpl的代码,求老大帮忙看哈
      

  14.   

    session 报null,是因为你没有从struts的action中进来所以没有session
      

  15.   

    建议你写一个struts方法来处理那些Android的事,就像用户发送网页请求一样,不要区别对待
      

  16.   

    如果是这样做,可以把安卓端和和web端访问端口分离吗?  比如安卓端用9999,web端用8080?
      

  17.   

    如果是这样做,可以把安卓端和和web端访问端口分离吗?  比如安卓端用9999,web端用8080?
    为什么要分离呢?用路径分离就是了:比如:http://andriod.xx.xx
      

  18.   

    如果是这样做,可以把安卓端和和web端访问端口分离吗?  比如安卓端用9999,web端用8080?
    为什么要分离呢?用路径分离就是了:比如:http://andriod.xx.xx

    因为现在考虑的是需要分离的,web端和安卓端面向的的用户类型、数量不同,现在安卓跟服务器端通信的使用的是socket,没用Struts,
    web项目用的是SSh框架,就想在此项目里面加一个监听,监听里面调用web项目中已经写好的service层的一些方法,可是调用就一直报上面的空指针错,而web项目本身此方法没有错误           请问您有什么方法可以让我调用service层的一些方法吗?
      

  19.   

    直接用BeanFactor.getBean(service.class);获取bean就好了
      

  20.   

    TestNetInfoService tnis = (TestNetInfoService) BeanFactory.getBean(TestNetInfoService.class);
      

  21.   

    在你的spring里面配置了给他自动set值么?
    userService  这个对象
    去查查spring注入吧
      

  22.   

    如果是这样做,可以把安卓端和和web端访问端口分离吗?  比如安卓端用9999,web端用8080?
    为什么要分离呢?用路径分离就是了:比如:http://andriod.xx.xx

    因为现在考虑的是需要分离的,web端和安卓端面向的的用户类型、数量不同,现在安卓跟服务器端通信的使用的是socket,没用Struts,
    web项目用的是SSh框架,就想在此项目里面加一个监听,监听里面调用web项目中已经写好的service层的一些方法,可是调用就一直报上面的空指针错,而web项目本身此方法没有错误           请问您有什么方法可以让我调用service层的一些方法吗?
    那你就不要调用session啊,session是view层的方法。