2015-10-05 5 views
7

मेरे पास bean.xml फ़ाइल के सही प्रारूप और उपयोग के बारे में एक प्रश्न है। अपनी परियोजनाओं में मैं आम तौर पर (कोई explizit सेम घोषणा करते थे) मेरी bean.xml फ़ाइलों के लिए इस सामग्री का इस्तेमाल किया:सीडीआई - सही bean.xml प्रारूप क्या है?

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation=" 
     http://java.sun.com/xml/ns/javaee 
     http://java.sun.com/xml/ns/javaee/beans_1_0.xsd"> 
</beans> 

यह WildFly 8 और 9 में अच्छी तरह से काम करता है लेकिन मैं ग्लासफिश 4 ​​में तैनाती मुद्दे हैं सवाल में : Glassfish 4, simple example in CDI fails with WELD-001408 Unsatisfied dependencies मैं एक वैकल्पिक प्रारूप के बारे में लिखा है:

<beans 
    xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee 
        http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd" 
      bean-discovery-mode="all"> 
</beans> 
वहाँ

इस्तेमाल किया एक अलग नामस्थान। और GlassFish4 इसके बारे में परवाह करता है।

जेईई 7 के लिए उपयोग की गई खाली बीन.एक्सएमएल फ़ाइल का सही प्रारूप क्या है?

उत्तर

12

सही खाली beans.xmlपूरी तरह से खाली फ़ाइल, वास्तव में ;-)

हो सकता है लेकिन जब आप कुछ सामग्री जोड़ना चाहते हैं, नोटिस कृपया है कि XML तैनाती वर्णनकर्ता नामस्थान के सबसे जावा ईई 7 में अद्यतन किया गया है। यह post describes विवरण। bean-discovery-mode भी जोड़ा गया है।

Btw:

<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd" 
     version="1.2" bean-discovery-mode="annotated"> 

    <!-- some content --> 
</beans> 

आप version="1.2" विशेषता का उपयोग देख सकते हैं - आप स्वतंत्र रूप से 1.1 के लिए सेट कर सकते हैं: नमूना beans.xml जो मैं अभी उपयोग कर रहा हूँ की तरह लग रहा है। यह सिर्फ पाठक को एक अनुस्मारक के रूप में कार्य करता है कि परियोजना सीडीआई 1.2 का उपयोग कर रही है (जो वास्तव में रखरखाव रिलीजसीडीआई 1.1 विशिष्टता) है।

संबंधित मुद्दे