[
https://issues.apache.org/jira/browse/NETBEANS-3996?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Stephen Brooksbank updated NETBEANS-3996:
-----------------------------------------
Attachment: messages.log
Code Assert error caused by code completion.png
> Assert error - code completion
> ------------------------------
>
> Key: NETBEANS-3996
> URL: https://issues.apache.org/jira/browse/NETBEANS-3996
> Project: NetBeans
> Issue Type: Bug
> Components: cnd - Code Completion
> Affects Versions: 11.2
> Environment: Product Version: Apache NetBeans IDE 11.2
> Java: 13.0.1; OpenJDK 64-Bit Server VM 13.0.1+9
> Runtime: OpenJDK Runtime Environment 13.0.1+9
> System: Windows 10 version 10.0 running on amd64; Cp1252; en_GB (nb)
> DerbyDB v10.14.2
> Wildfly v18.0.1
> Reporter: Stephen Brooksbank
> Priority: Minor
> Attachments: Code Assert error caused by code completion.png,
> messages.log
>
>
> The problem started to happen after the Static function was added to the
> class DeclarationsFacade (code attached below).
> The code completion is trying to add the method findByNDEAArc. The list of
> options is shown. You use the cursor to find and select the right one, and
> then the error occurs.
> I shut down the NetBeans environment, and restarted afresh, and the same
> error appears.
> NOTE: I have now discovered that Static methods are not allowed in Stateless
> EJBs Nevertheless the exception shouldn't happen.
>
>
> java.lang.AssertionError
> at com.sun.tools.javac.util.Assert.error(Assert.java:155)
> at com.sun.tools.javac.util.Assert.check(Assert.java:46)
> at com.sun.tools.javac.code.Scope$ScopeImpl.dble(Scope.java:410)
> at com.sun.tools.javac.code.Scope$ScopeImpl.enter(Scope.java:433)
> at com.sun.tools.javac.comp.MemberEnter.visitVarDef(MemberEnter.java:480)
> at com.sun.tools.javac.tree.JCTree$JCVariableDecl.accept(JCTree.java:972)
> at com.sun.tools.javac.comp.MemberEnter.memberEnter(MemberEnter.java:172)
> at com.sun.tools.javac.comp.Attr.visitVarDef(Attr.java:1191)
> at com.sun.tools.javac.tree.JCTree$JCVariableDecl.accept(JCTree.java:972)
> at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:674)
> at com.sun.tools.javac.comp.Attr.attribStat(Attr.java:754)
> at com.sun.tools.javac.comp.Attr.attribStats(Attr.java:778)
> at com.sun.tools.javac.comp.Attr.visitBlock(Attr.java:1357)
> at org.netbeans.lib.nbjavac.services.NBAttr.visitBlock(NBAttr.java:78)
> at com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:1036)
> at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:674)
> at com.sun.tools.javac.comp.Attr.attribStat(Attr.java:754)
> at
> org.netbeans.api.java.source.TreeUtilities.attributeTree(TreeUtilities.java:892)
> at
> org.netbeans.api.java.source.TreeUtilities.attributeTree(TreeUtilities.java:822)
> at
> org.netbeans.modules.editor.java.JavaCodeTemplateProcessor.type(JavaCodeTemplateProcessor.java:718)
> at
> org.netbeans.modules.editor.java.JavaCodeTemplateProcessor.instanceOf(JavaCodeTemplateProcessor.java:550)
> at
> org.netbeans.modules.editor.java.JavaCodeTemplateProcessor.getProposedValue(JavaCodeTemplateProcessor.java:399)
> at
> org.netbeans.modules.editor.java.JavaCodeTemplateProcessor.updateDefaultValues(JavaCodeTemplateProcessor.java:145)
> at
> org.netbeans.lib.editor.codetemplates.CodeTemplateInsertHandler.processTemplate(CodeTemplateInsertHandler.java:225)
> at
> org.netbeans.lib.editor.codetemplates.CodeTemplateManagerOperation.insert(CodeTemplateManagerOperation.java:273)
> at
> org.netbeans.lib.editor.codetemplates.api.CodeTemplate.insert(CodeTemplate.java:82)
> at
> org.netbeans.modules.editor.java.JavaCompletionItem.process(JavaCompletionItem.java:566)
> at
> org.netbeans.modules.editor.java.JavaCompletionItem.defaultAction(JavaCompletionItem.java:286)
> at
> org.netbeans.modules.editor.completion.CompletionImpl.dispatchKeyEvent(CompletionImpl.java:785)
> at
> org.netbeans.modules.editor.completion.CompletionImpl.keyPressed(CompletionImpl.java:386)
> at
> java.desktop/java.awt.AWTEventMulticaster.keyPressed(AWTEventMulticaster.java:258)
> at
> java.desktop/java.awt.AWTEventMulticaster.keyPressed(AWTEventMulticaster.java:257)
> at java.desktop/java.awt.Component.processKeyEvent(Component.java:6594)
> at java.desktop/javax.swing.JComponent.processKeyEvent(JComponent.java:2849)
> at java.desktop/java.awt.Component.processEvent(Component.java:6413)
> at java.desktop/java.awt.Container.processEvent(Container.java:2263)
> at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5012)
> at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
> at java.desktop/java.awt.Component.dispatchEvent(Component.java:4844)
> at
> java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1950)
> at
> java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:870)
> at
> java.desktop/java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1139)
> at
> java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:1009)
> at
> java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:835)
> at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4893)
> at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
> at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2762)
> at java.desktop/java.awt.Component.dispatchEvent(Component.java:4844)
> at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772)
> at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
> at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
> at
> java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
> at
> java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
> at
> java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
> at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
> at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743)
> at
> java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
> at
> java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
> at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
> at
> org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:136)
> [catch] at
> java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
> at
> java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
> at
> java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
> at
> java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
> at
> java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
> at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
>
>
> +DeclarationsFacade (edited+
> package com.xxx.emcs_customs.sessionbeans;
> import com.xxx.emcs_customs.entities.Declarations;
> import java.util.Date;
> import java.util.List;
> import java.util.logging.Level;
> import java.util.logging.Logger;
> import javax.ejb.Stateless;
> import javax.naming.Context;
> import javax.naming.InitialContext;
> import javax.naming.NamingException;
> import javax.persistence.EntityManager;
> import javax.persistence.PersistenceContext;
> import javax.persistence.Query;
> /**
> *
> * @author sjbro
> */
> @Stateless
> public class DeclarationsFacade extends AbstractFacade<Declarations> {
> private static final Logger LOG =
> Logger.getLogger(DeclarationsFacade.class.getName());
> @PersistenceContext(unitName = "EMCS_CustomsPU")
> private EntityManager em;
> @Override
> protected EntityManager getEntityManager() {
> return em;
> }
> public DeclarationsFacade() {
> super(Declarations.class);
> }
> // ***** ADDED ***** ADDED ***** ADDED *****
> @Override
> public void create(Declarations entity) {
> entity.setCreated(new Date());
> entity.setUpdated(entity.getCreated());
> super.create(entity);
> }
> @Override
> public void edit(Declarations entity) {
> entity.setUpdated(new Date());
> super.edit(entity);
> }
> /**
> * Static method to obtain a DeclarationsFacade - for use when injection
> isn't available
> * @return
> */
> public static DeclarationsFacade lookupDeclarationsFacade() {
> try {
> Context c = new InitialContext();
> return (DeclarationsFacade) c.lookup("java:module/DeclarationsFacade");
> } catch (NamingException ne) {
> LOG.log(Level.SEVERE, "exception caught", ne);
> throw new RuntimeException(ne);
> }
> }
> public Declarations findByNDEAArc(String ndea, String arc) {
> Query q = em.createNamedQuery("Declarations.findByNDEAArc");
> q.setParameter("ndea", ndea);
> q.setParameter("arc", arc);
> List<Declarations> list = q.getResultList();
> // list can only ever be 0 or 1 rows
> return ( list.size() == 1 ? list.get(0) : null);
> }
> public Declarations findByNDEAConsignorLRN(String ndea, String consignorId,
> String lrn) {
> Query q = em.createNamedQuery("Declarations.findByNDEAConsignoridLrn");
> q.setParameter("ndea", ndea);
> q.setParameter("consignorid", consignorId);
> q.setParameter("lrn", lrn);
> List<Declarations> list = q.getResultList();
> // list can only ever be 0 or 1 rows
> return ( list.size() == 1 ? list.get(0) : null);
> }
>
> }
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists