I'm trying to implement a inbound resource adapter which will receive a data through HTTP protocol. I have two variants of implementations: to use Jetty as inner server and to use web container from WildFly. I know how to use Jetty, but think that Undertow using is the best. But how? WildFly does not see @WebServlet in RAR. How can I tell to WildFly to deploy a servlet which is located RAR?
How to use HTTP protocol in Resource Adapter in WildFly
163 Views Asked by Alexander Fedyukov At
1
There are 1 best solutions below
Related Questions in SERVLETS
- Redirect inside java interceptor
- Which Should i use for date,time,email in servlet?
- Importing a downloaded JAR file into a Servlet
- Execute RequestDispatcher after 5 seconds
- What's the difference between a ServletHandler and a ServletContextHandler in Jetty?
- How to call servlet file from html
- Requested Resource is not available error
- Struts exclude pattern with spring
- How can I get a custom header from the client in Tomcat?
- How to print Jasper reports from servlets?
- The type javax.servlet.ServletContext and javax.servlet.ServletException cannot be resolved
- ServletContext Attribute : Thread Safety test not working
- Servlet ClassNotFoundException when present in a package ... Why?
- How to create a PDF with iText+XMLWorker from servlet using custom font?
- Starting a ScheduledExecutorService from a servlet with a set of parameters
Related Questions in WILDFLY
- How is group membership determined in a Wildfly cluster of standalone servers?
- Set system properties in standalone-full.xml in wildfly 8.2
- How to add more jax-rs components to the application?
- Multiple Hibernate transactions in a JTA session
- Wildfly 9.0.0 and Netbeans 8.0.2
- Websocket (java ee) how to get role of current user
- JCA Glassfish to JBoss/Wildfly
- "XNIO001001: No XNIO provider found" error when deploying to Wildfly using Cargo Java API and Jenkins
- Wildfly - Infinispan Transactions configuration
- Fully disable Weld JSF integration in Wildfly 8.2
- PATH not working on Mac OS X 10.10.3
- Why is my EntityManager not properly injected?
- How to inject EmtityManager to BaseDao in wildfly8?
- Breakpoint does not work in a websocket deployed in Wildfly 8.x
- Transaction fails with IJ000457, IJ000461 and IJ000356 on first time, but works thereafter
Related Questions in JCA
- What is the use of Java Connector Architecture (JCA)?
- Error Setting WildFly 10 Resource Adapter (wmq.jmsra.rar)
- JCA accesses file in cluster
- Create DES key from 56 bit binary string
- Which is the best approach to connect IBM Mainframe application using Java Connector Architecture (JCA)?
- JNDI lookup of JCA 1.6 on GlassFish
- Configuring JBoss EPA 6.1 with IBM MQ
- Exception while running connectorz Executor framework
- Relationship between JCA, it's providers and JCE?
- How to read connection pool settings from resource adapter?
- Finding the length of the public key
- Integrating different persistence technologies in a Java EE application
- Glassfish 3.1 ActiveMQ and genericra consuming messages
- Glassfish does not stop dependent applications registered with a JCA Resource Adapter when changing a configuration property of the RA
- Websphere liberty server JCA (Java connector architecture), JNDI and resource adapter
Related Questions in INBOUND
- Process ALL incoming e-mails with PHP script
- How to check for valid URL's and route it to VM at the end of Flow in MULE..?
- Is a web socket connection in javascript an inbound connection?
- Twilio Dev Phone Plugin Issues during installation
- Beyondcode Laravel mailbox with postmark returns HTTP status code of 405
- Adding an Inbound Rule in IIS [UrlRewite]
- Is there an email server that can do a REST POST to my end point when an email is received?
- sugarcrm inboundemail not creating cases
- Reading of files with max-messages-per-poll=10 and prevent-duplicates=false
- Maximo 7.6.1.2 Create GL Component from integration
- I am not able to implement to reply message to twilio number
- Source Port vs Destination Port
- How to use HTTP protocol in Resource Adapter in WildFly
- how to limit inbound in v2ray to a single device
- After added the user IP in inbound traffic(access restriction) of app service in azure, those IP user still cannot access the website
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
When it comes to the point where the whole ecosystem is against me, I usually ask myself whether I'm sure the whole idea is right. Your idea does not seem to be right at all. Still, if you're sure, I'll explain the way of doing something that is close to what you want.
The idea of using servlet inside a resource adapter is a bit odd. Implementing an inbound HTTP adapter is odd either. In some logical sense, servlet container is an inbound HTTP resource adapter itself. It doesn't really utilize JCA container, but it's quite close to what an inbound resource adapter would stand for.
Another reason for not doing so is that resource adapters and application deployments have quite different life cycle. While WAR/EAR deployment represents an application which 'serves as it lives', the RAR semantic is quite different: instead of doing some business logic, resource adapter just provides interfaces for other deployments. You can bundle RAR into your EAR for sure, but if you're not targeting a monstrous monolith, you'll end-up deploying RAR as a separate artefact for your applications to use. Resource adapter should not contain any particular business logic. If you need it to do so, consider rethinking whether you need an application server at the first place: JCA container is quite poor comparing to EJB and Web ones, and if you don't need all the power, Java SE might come in handy.
Now, if you're still 100 % sure you need this, let's take a look at your options:
You may try to implement ServiceActivator -- a JBoss-specific start point for custom extensions. From within this activator you can access UndertowService and perform servlet container bootstrap manually. Here is an example of SA-powered artefact from Wildfly team. Since your question is quite unusual, I cannot confirm whether JCA deployment will support it, but it seems to.
If you cannot just force Wildfly's web container to process RAR deployment, you could fall back to a manual container instantiation. Undertow itself is just a module inside Wildfly so you can access it by specifying module dependency clause in your RAR's JAR manifest like so:
Undertow's classes will then be available to you upon deployment through your classloader and you'll be able to instantiate a new server with custom servlets inside.