Configure JSF taglib external resource

Answered

I was looking at the sample applications from the TomEE starter project and the Jakarta EE 9 samples - and while Maven can compile and package the target applications, Idea is having problems with the taglib declarations and usage in the sample JSF files.

It's been a few years [looks like questions in the forums around 2003-2005 time frames] about setting up an external resource. The external resource along with enabling the JSF plugin should eliminate the errors in the editor.

As a separate topic, it looks like JSF 3.x has eliminated some of the legacy 'html rendering' tag libraries. [e.g.xmlns:h="http://java.sun.com/jsf/html" ]

Is the JSF plugin supposed to recognize this usage, or the JSF 3.x style URN that looks like a package name?

Is the external resource mapping global, or on a per project basis?

In a Maven based project, is there a dependency declaration that enables auto configuration of the taglib schema?

Can maven coordinates be used to specify an external resource?

 
0
7 comments

 Is the JSF plugin supposed to recognize this usage, or the JSF 3.x style URN that looks like a package name?

This is implemented in the 2023.1 beta release: https://youtrack.jetbrains.com/issue/IDEA-308542. You can try it out and let us know if it helps?
As for the other questions could you please provide a bit more context for better understanding? Project sample, screenshots, actual/expected behavior would help a lot. Thanks!

0

I'll give the beta release a try this evening - along with the Jakarta EE sample code. 

1

Screenshot showing code from the TomEE 'starter' project. The 'xmlns' prefix mappings are not in red, as I tried to setup the external resource, but the mapping is likely incorrect.

Build is Build #IU-223.8617.56, built on January 26, 2023 - will be downloading the beta/eap.  I also saw release notes for Glassfish 7.0.2 noting that the taglib schemas were added to the classpath - TomEE may need some explicit dependencies added to the pom 

0

Just updated to the EAP build - same issue

IntelliJ IDEA 2023.1 Beta (Ultimate Edition)
Build #IU-231.8109.2, built on March 6, 2023
Licensed to IntelliJ IDEA EAP user: dlevitt@mac.com
Expiration date: April 5, 2023
Runtime version: 17.0.6+10-b829.5 x86_64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
macOS 12.6.3
GC: G1 Young Generation, G1 Old Generation
Memory: 1024M
Cores: 8
Metal Rendering is ON
Non-Bundled Plugins:
    main.kotlin.com.jimschubert.intellij.swaggercodegen (4.3.1-p0)
    com.crunch42.openapi (1.49)
    org.jetbrains.plugins.ruby (231.8109.2)
    com.intellij.guice (231.8109.2)
    com.jetbrains.jax.ws (231.8109.2)
    com.intellij.javaee.ejb (231.8109.2)
    soapUI Plugin (3.5)
    com.intellij.jsf (231.8109.2)
    com.intellij.javaee.batch (231.8109.2)
    org.intellij.scala (2023.1.10)
    com.jetbrains.php (231.8109.2)

Kotlin: 231-1.8.0-release-345-IJ8109.2

0

Thank you for the information. Could you please share your project sample so that we can analyze it further? You can upload it securely here: https://uploads.jetbrains.com. Just provide the uploaded file ID.

0

Upload ID 2023_03_10_25Wdwh1FBjRcg5hE9YzVQj

mvn:clean invoked on the project

Note that glassfish 7.0.2 is installed locally, and toolchains is configured for jdk 1.8, 11 and 17

0

Thank you for the project! From your screenshot, it seems you are not using the same jakartaee9 sample project. Could you share the project you are having the issue with? Also, could you try to open the project in IntelliJ 2023.1 Beta and:

  • Click on Reload All Maven Projects button in Maven tool window
  • File > Invalidate Caches.. > Invalidate and Restart

See if that helps.
Also, we managed to reproduce the issue with the sample project you provided, and seems the problem is caused by the module not being imported correctly. For example, jakartaee9/platform/movieplex8 threw the same errors in the src/webapp/booking/booking.xhtml file. After the module import  (File > Project Structure > Modules > Add (plus icon) > Import Module > select jakartaee9/platform/movieplex8 > OK > Import module from external model > Maven) the highlighted errors were gone. 

0

Please sign in to leave a comment.