0

getting the following error : org.jboss.weld.exceptions.DeploymentException: WELD-001408: Unsatisfied dependencies for type UserProvider with qualifiers @Default at injection point [BackedAnnotatedField] @Inject dwp.UserServlet.userProvider

while deploying the servlet

following is my servlet class :

package dwp;

import java.io.IOException;
import java.io.PrintWriter;

import javax.inject.Inject;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import model.User;
import service.UserProvider;

/**
 * Servlet implementation class UserServlet
 */
@WebServlet("/UserServlet")
public class UserServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
    @Inject
    UserProvider userProvider;

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        response.getWriter().append("Served at: ").append(request.getContextPath());
        Long id = Long.valueOf(request.getParameter("id"));
        User user = userProvider.findUser(id);
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.print(user);
    }

}

UserProvider class :

package service;

import javax.ejb.Stateful;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

import model.User;

@Stateful
public class UserProvider {
    @PersistenceContext(unitName="jap")
    EntityManager em;

    public User findUser(Long id) {
        return em.find(User.class,id);
    }
}

User class :

package model;

import java.io.Serializable;
import javax.persistence.*;


/**
 * The persistent class for the USERS database table.
 * 
 */
@Entity
@Table(name="USERS")
@NamedQuery(name="User.findAll", query="SELECT u FROM User u")
public class User implements Serializable {
    private static final long serialVersionUID = 1L;

    @Id
    private long id;

    private String password;

    private String username;

    public User() {
    }

    public long getId() {
        return this.id;
    }

    public void setId(long id) {
        this.id = id;
    }

    public String getPassword() {
        return this.password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getUsername() {
        return this.username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

}
Nihal Saxena
  • 948
  • 3
  • 11
  • 24

0 Answers0