2015-12-11 3 views
0

Я выбор следующие столбцы с помощью MULTISELECT критериев APIJPA - java.lang.IllegalArgumentException: Атрибут [ProductName] нет в управляемом типа

Фрагмент кода

criteriaQuery.multiselect(root.get(MasterCat_.prodId), 
joinProduct.get(ProductList_.prName).alias("productName")); 

criteriaQuery.orderBy(criteriaBuilder.desc 
(root.get(mywrapperclass.getOrderBy())); 

В выше порядка по фрагменту кода, я отправляю productName с клиента.

и в выражении конструктора У меня есть

public ProductListUtil(Long logId, String productName) {    
      this.logId = logId; 
      productName = productName; 
      } 

Ошибка я получаю java.lang.IllegalArgumentException: The attribute [productName] is not present in the managed type.

Как я могу это решить?

Исключение StackTrace

java.lang.IllegalArgumentException: Атрибут [ProductName] нет в управляемом типа [EntityTypeImpl @ 5185929: ProductList [javaType: класс test.entity.ProductList дескриптора: RelationalDescriptor (test.entity.ProductList -> [DatabaseTable (PRODUCT_LISTS)]), сопоставления: 8]]. at org.eclipse.persistence.internal.jpa.metamodel.ManagedTypeImpl.getAttribute (ManagedTypeImpl.java:148) at org.eclipse.persistence.internal.jpa.querydef.FromImpl.get (FromImpl.java:312) at test.service.ProductListService.getProductListsList (ProductListService.java:129) на test.service.ProductListService.getProductLists (ProductListService.java:101) на test.service.ProductListService.getProductLists (ProductListService.java:94) на солнце. reflect.NativeMethodAccessorImpl.invoke0 (Родной метод) на sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:39) на sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25) в java.lang.reflect.Method .invoke (метод .java: 597) в com.sun.jersey.spi.container.JavaMethodInvokerFactory $ 1.invoke (JavaMethodInvokerFactory.java:60)

+1

Это не говорит, что в конструкторе нет аргумента ... он говорит, что в классе с этим именем нет атрибута. Здесь? –

+0

@NeilStockton Spot on, спасибо тонну за указание. – user75ponic

ответ

1

Это не говорит, что нет Arg в конструкторе ... он говорит в классе с этим именем нет атрибута.

 Смежные вопросы

  • Нет связанных вопросов^_^