I have one entity which is the Product entity: package com.amitbaz.tradingsystem; import javax.persistence.Column;import javax.persistence.GeneratedValue;import javax.persistence.GenerationType;import javax.persistence.Id; import org.hibernate.annotations.DynamicUpdate;import org.hibernate.annotations.NamedQueries;import org.hibernate.annotations.NamedQuery;import org.hibernate.annotations.Table; @DynamicUpdate(true)@Table(appliesTo = "productTable")@NamedQueries({ @NamedQuery(name = "com.amitbaz.tradingsystem.product.GetAll", query= "select p from Product p"), @NamedQuery(name = "com.amitbaz.tradingsystem.product.GetByName", query= "select p from Product p where p.fullName like :name") })public class Product {
@Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "product_id") private int id; @Column(name="product_name") private String fullName; @Column(name="product_info") private String info; @Column(name="product_price") private float price; @Column(name="product_base_currency") private String baseCurrency; public Product(String fullName, String info, float price, String baseCurrency) { this.fullName = fullName; this.info = info; this.price = price; this.baseCurrency = baseCurrency; }} and the DAO looks like this: package com.amitbaz.tradingsystem; import org.hibernate.Hibernate;import org.hibernate.Session;import org.hibernate.SessionFactory;import java.util.List; import io.dropwizard.hibernate.AbstractDAO; public class ProductDAO extends AbstractDAO<Product>{ public ProductDAO(SessionFactory sessionFactory) { super(sessionFactory); // TODO Auto-generated constructor stub } public List<Product> getAll(){ return list(namedQuery("com.amitbaz.tradingsystem.product.GetAll")); } public List<Product> getByName(String name){ StringBuilder builder = new StringBuilder("%"); builder.append(name).append("%"); return list(namedQuery("com.amitbaz.tradinsystem.product.GetByName").setParameter("name", builder.toString())); } } I also initialized the hibernateBundle in the application class and registered the resource to the environment: package com.amitbaz.tradingsystem; import org.glassfish.jersey.server.filter.RolesAllowedDynamicFeature;import org.hibernate.Hibernate;import org.skife.jdbi.v2.DBI; import io.dropwizard.Application;import io.dropwizard.auth.AuthDynamicFeature;import io.dropwizard.auth.AuthValueFactoryProvider;import io.dropwizard.auth.CachingAuthenticator;import io.dropwizard.auth.basic.BasicCredentialAuthFilter;import io.dropwizard.auth.basic.BasicCredentials;import io.dropwizard.db.DataSourceFactory;import io.dropwizard.db.PooledDataSourceFactory;import io.dropwizard.hibernate.HibernateBundle;import io.dropwizard.jdbi.DBIFactory;import io.dropwizard.setup.Bootstrap;import io.dropwizard.setup.Environment; public class TradingSystemApplication extends Application<TradingSystemConfiguration>{ public static void main(String[] args) throws Exception{ new TradingSystemApplication().run(args); } private final HibernateBundle<TradingSystemConfiguration> HibernateBundle = new HibernateBundle<TradingSystemConfiguration>(Product.class){ @Override public DataSourceFactory getDataSourceFactory(TradingSystemConfiguration config) { // TODO Auto-generated method stub return config.getDataSourceFactory(); } }; @Override public void initialize(Bootstrap<TradingSystemConfiguration> bootstrap) { // TODO Auto-generated method stub bootstrap.addBundle(HibernateBundle); } @Override public void run(TradingSystemConfiguration config, Environment env) throws Exception { // TODO Auto-generated method stub //final DBIFactory factory = new DBIFactory(); //final DBI jdbi = factory.build(env, config.getDataSourceFactory(), "mysql"); //final TestResource testRes = new TestResource(); //final UserDAO dao = jdbi.onDemand(UserDAO.class); final ProductDAO productDAO = new ProductDAO(HibernateBundle.getSessionFactory()); env.jersey().register(new ProductResource(productDAO)); env.jersey().register(new TestResource()); env.jersey().register(new AuthDynamicFeature( new BasicCredentialAuthFilter.Builder<User>() .setAuthenticator(new TradingSystemAuthenticator()) .setAuthorizer(new TradingSystemAuthorizer()) .setRealm("SHITTT") .buildAuthFilter())); env.jersey().register(RolesAllowedDynamicFeature.class); env.jersey().register(new AuthValueFactoryProvider.Binder<>(User.class)); } } Now, when I'm testing this queries i get an 500 error and Named query not known: <name of the query> error in the server logs -- You received this message because you are subscribed to the Google Groups "dropwizard-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to dropwizard-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.