কোনও ইন্টারনেট সংযোগ না থাকলে বসন্তের স্কিমালোকেশন ব্যর্থ হয়


107

আমি স্প্রিং ব্যবহার করছি এবং এর মধ্যে application-context.xmlআমার নিম্নলিখিত সংজ্ঞা রয়েছে:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns:util="http://www.springframework.org/schema/util"
   xmlns:context="http://www.springframework.org/schema/context"
   xmlns:aop="http://www.springframework.org/schema/aop"
   xmlns:tx="http://www.springframework.org/schema/tx"
   xmlns:p="http://www.springframework.org/schema/p"
   xmlns:security="http://www.springframework.org/schema/security"
   xsi:schemaLocation="
   http://www.springframework.org/schema/beans 
   http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
   http://www.springframework.org/schema/util 
   http://www.springframework.org/schema/util/spring-util-2.0.xsd
   http://www.springframework.org/schema/context
   http://www.springframework.org/schema/context/spring-context-2.1.xsd
   http://www.springframework.org/schema/tx
   http://www.springframework.org/schema/tx/spring-tx.xsd
   http://www.springframework.org/schema/aop
   http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
   http://www.springframework.org/schema/security
   http://www.springframework.org/schema/security/spring-security-2.0.xsd"
   >

.....

যখন আমার ইন্টারনেট সংযোগ নষ্ট হয়ে যায়, আমি টমক্যাট বা জেটির মাধ্যমে আমার অ্যাপ্লিকেশনটি চালাতে পারি না।

এটি দেয়:

[main] WARN  org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Ignored XML validation warning
org.xml.sax.SAXParseException: schema_reference.4: Failed to read schema document '/spring-beans-2.0.xsd', because 1) could not find the document; 2) the document could not be read; 3) the root element of the document is not <xsd:schema>.
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.warning(ErrorHandlerWrapper.java:96)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:380)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:318)
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaErr(XSDHandler.java:2541)
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaWarning(XSDHandler.java:2532)
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.getSchemaDocument(XSDHandler.java:1836)
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.parseSchema(XSDHandler.java:531)
    at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadSchema(XMLSchemaLoader.java:552)
    at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.findSchemaGrammar(XMLSchemaValidator.java:2408)
    at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleStartElement(XMLSchemaValidator.java:1753)
    at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.startElement(XMLSchemaValidator.java:685)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3095)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:921)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:225)
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:283)
    at org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:75)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:396)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:342)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:310)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:178)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:149)
    at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:124)
    at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:92)
    at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:123)
    at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:423)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:353)
    at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45)
    at org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:548)
    at org.mortbay.jetty.servlet.Context.startContext(Context.java:136)
    at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
    at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517)
    at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467)
    at org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStart(Jetty6PluginWebAppContext.java:115)
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
    at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
    at org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156)
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
    at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
    at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
    at org.mortbay.jetty.Server.doStart(Server.java:224)
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
    at org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:132)
    at org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:441)
    at org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:383)
    at org.mortbay.jetty.plugin.AbstractJettyRunMojo.execute(AbstractJettyRunMojo.java:210)
    at org.mortbay.jetty.plugin.Jetty6RunMojo.execute(Jetty6RunMojo.java:184)
    at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:483)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:678)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:553)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:523)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:371)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:332)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:181)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:356)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:137)
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:356)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
    at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
    at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
    at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
2009-11-13 15:31:25,675 [main] ERROR org.springframework.web.context.ContextLoader - Context initialization failed
org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 23 in XML document from class path resource [application-context.xml] is invalid; nested exception is org.xml.sax.SAXParseException: cvc-elt.1: Cannot find the declaration of element 'beans'.
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:404)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:342)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinit........

কোনও পরামর্শ কীভাবে এটি ঠিক করবেন?

উত্তর:


115

ক্লাসপথটি ব্যবহার করার দরকার নেই: আপনার স্কিমা লোকেশন ইউআরএলে প্রোটোকল যদি নাম স্থানটি সঠিকভাবে কনফিগার করা থাকে এবং আপনার ক্লাসপাথে এক্সএসডি ফাইল থাকে।

স্প্রিং ডক " হ্যান্ডলার এবং স্কিমা নিবন্ধকরণ " এটি কীভাবে করা উচিত তা দেখায়।

আপনার ক্ষেত্রে, সমস্যাটি সম্ভবত আপনার ক্লাসপথে বসন্ত-প্রসঙ্গের জারটি ২.১ নয় 1 এজন্য প্রোটোকলটিকে ক্লাসপথে পরিবর্তন করা: এবং আপনার ক্লাসপথে নির্দিষ্ট 2.1 এক্সএসডি স্থাপন করা সমস্যার সমাধান করে।

আমি যা দেখেছি, সেখান থেকে একটি স্প্রিং- * জারে থাকা মূল এক্সএসডি জন্য 2 টি স্কিমার সংজ্ঞা দেওয়া আছে। একবার সংস্করণটি দিয়ে স্কিমা URL টি সমাধান করুন এবং এটি একবার ছাড়াই without

উদাহরণস্বরূপ বসন্ত-প্রসঙ্গে-বসন্তের প্রাসঙ্গিক সংস্করণে he.০.৫.২০১A এর মধ্যে চেমাসের সামগ্রীগুলির এই অংশটি দেখুন:

http\://www.springframework.org/schema/context/spring-context-2.5.xsd=org/springframework/context/config/spring-context-2.5.xsd
http\://www.springframework.org/schema/context/spring-context-3.0.xsd=org/springframework/context/config/spring-context-3.0.xsd
http\://www.springframework.org/schema/context/spring-context.xsd=org/springframework/context/config/spring-context-3.0.xsd

এর অর্থ এটি (এক্সসি: স্কিমা লোকেশন)

http://www.springframework.org/schema/context/spring-context-2.5.xsd 

বিরুদ্ধে বৈধতা দেওয়া হবে

org/springframework/context/config/spring-context-2.5.xsd 

ক্লাসপাথে।

http://www.springframework.org/schema/context/spring-context-3.0.xsd 

অথবা

http://www.springframework.org/schema/context/spring-context.xsd

বিরুদ্ধে বৈধতা দেওয়া হবে

org/springframework/context/config/spring-context-3.0.xsd 

ক্লাসপাথে।

http://www.springframework.org/schema/context/spring-context-2.1.xsd

সংজ্ঞায়িত করা হয় নি তাই স্কিমলোকেশনে সংজ্ঞায়িত আক্ষরিক URL ব্যবহার করে বসন্ত এটির সন্ধান করবে।


37
যাদের সংক্ষিপ্তসার প্রয়োজন তাদের জন্য: বসন্ত ক্লাসপথে স্কিমগুলি খুঁজে পাবে না। স্প্রিং কোর জারের একটি স্কিমা-> ফাইলের নাম ম্যাপিং রয়েছে যা জেআর অন্তর্ভুক্ত রয়েছে। যদি এটি সমাধান করতে না পারে তবে এটি ওয়েবে যাবে।
অ্যালেক্স

আমি এটিকে "http:////www.springframework.org/schema/context http: ///www.springframework.org/schema/context/spring-context-4.0.xsd" এর মতো ঘোষণা করেছি। গ্লাসফিশ / ডোমেন / ডোমেন 1 / লাইব এ আমার কাছে 4.0 জার রয়েছে। আমি যখনই প্রকল্পটি স্থাপন করি তখন কাচফিশ ইন্টারনেটকে বোঝায়। এই সমস্যাটি কি গ্লাস ফিশ -৪.০ এর সাথে নির্দিষ্ট? (বিন্যাসের জন্য আরও '/' গুলি যুক্ত হয়েছে)
প্রাগলথন এম

আমি মনে করি নতুন "হ্যান্ডলার এবং স্কিমা নিবন্ধকরণ
ডিস্ক

1
@ ডার্ক - সেই লিঙ্কটি ভাঙা দেখা যাচ্ছে
স্টর্মক্লাউড

2
@ স্টারমক্লাউড, হ্যাঁ, আসল লিঙ্কটি ফিরে এসেছে এবং আমার প্রস্তাবিত একটি নষ্ট হয়ে গেছে। : এখানে সর্বশেষ ডকুমেন্ট লিঙ্ক docs.spring.io/spring/docs/current/spring-framework-reference/...
ডির্ক

28

আমি এটি সমাধান

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:util="http://www.springframework.org/schema/util"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xmlns:tx="http://www.springframework.org/schema/tx"
       xmlns:p="http://www.springframework.org/schema/p"
       xmlns:security="http://www.springframework.org/schema/security"
       xsi:schemaLocation="
       http://www.springframework.org/schema/beans 
       http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
       http://www.springframework.org/schema/util 
       http://www.springframework.org/schema/util/spring-util-2.0.xsd
       http://www.springframework.org/schema/context
       classpath:spring-context-2.1.xsd
       http://www.springframework.org/schema/tx
       http://www.springframework.org/schema/tx/spring-tx.xsd
       http://www.springframework.org/schema/aop
       http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
       http://www.springframework.org/schema/security
       http://www.springframework.org/schema/security/spring-security-2.0.xsd"
       >

classpath:spring-context-2.1.xsdঅফলাইন মোডে কাজ করার কী (কোনও ইন্টারনেট সংযোগ নেই)। এছাড়াও আমি spring-context-2.1.xsdঅ্যাপ্লিকেশন-কনটেক্সট.এক্সএমএল ফাইলের কাছে (একই ডিরেক্টরি) অনুলিপি করেছি


6
ইন্টেলিজ ব্যবহারকারীদের জন্য যারা এটির মধ্যে চলে যেতে পারে। স্কেলমাল লোকেশনের অভ্যন্তরে ইন্টেলিজ ক্লাসপাথ সিনট্যাক্সকে স্বীকৃতি দেয় না এবং এটি ত্রুটি হিসাবে হাইলাইট করে যদিও এটি কাজ করে।
আপগ্রেডডেভ

ডেভিপ্যারোলিক আপনাকে একটি বিশাল ধন্যবাদ জানায় - ত্রুটিটি আমাকে দূরে সরিয়ে দিচ্ছিল তবে এটি কৌশলটি পুরোপুরি কার্যকর করে।
জাচ জনসন

18

এরকম কিছু আমার জন্য কাজ করেছিল।

xsi:schemaLocation=
"http://www.springframework.org/schema/beans 
             classpath:org/springframework/beans/factory/xml/spring-beans-3.0.xsd
http://www.springframework.org/schema/context 
             classpath:org/springframework/beans/factory/xml/spring-context-3.0.xsd"

1
হ্যাঁ এটি কাজ করে কারণ এক্সএসডিটি বসন্তের জারের অভ্যন্তরে প্যাকেজড। সুতরাং আপনি যখন জারের অভ্যন্তরে এক্সএসডি ব্যবহার করতে পারেন তখন স্প্রিংফ্রেমওয়ার্ক.কম এ চেক করার দরকার নেই :)
সোমাইয়া কুম্বের

এই সমাধানটি আমার পক্ষে কাজ করেছে কারণ আমার একটি জারের ভিতরে বসন্তের নির্ভরতা ছিল যার অর্থ আমি একটি বাহ্যিক জার হিসাবে এবং ইন্টারনেট ব্যতীত আপনার সমাধানটি আমার জন্য খুব ভালভাবে কাজ করেছে ধন্যবাদ একটি blessশ্বর আশীর্বাদ করুন।
চিপার্তেটিজ

@ গুডলাইকনুব আমি এটি চেষ্টা করেছিলাম কিন্তু এটির আবারও ত্রুটি দেওয়ার কারণে "সিভিসি-এল্ট .১: উপাদানটির মটরশুটি" ঘোষণার সন্ধান পাওয়া যায় না। "
কামিনী

6

যদি কেউ আমার মতো একই শিকড়টি দিয়ে এখানে আসে - আমি এই সমস্যার কারণ হ'ল কারণ আমি স্প্রিং জারস সহ সমস্ত নির্ভরতা সহ একটি একক জেআর তৈরি করছিলাম। ফলস্বরূপ স্প্রিং জেআরএস এর কয়েকটি মেটা-আইএনএফ ডিরেক্টরিতে স্প্রিং.সেমাস ফাইলটি ওভাররাইট করা হয়েছিল।

আমি এখানে প্রস্তাবিত সমাধানগুলি পেয়েছি: মেভেনের সাথে বসন্ত-ভিত্তিক এক্সিকিউটেবল জারটি কীভাবে তৈরি করবেন?


5

আজ একটি অনুরূপ ইস্যু মধ্যে দৌড়ে। আমার ক্ষেত্রে, এটি ছায়াময় প্লাগইনই অপরাধী ছিল, স্প্রিংফ্রেমওয়ার্ক.অর্গ ছাড়াও আউটেজ রয়েছে। নিম্নলিখিত স্নিপেট জিনিসগুলি সাফ করেছে:

<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
   <resource>META-INF/spring.schemas</resource>
</transformer>
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
    <resource>META-INF/spring.handlers</resource>
</transformer>

এইচটিএইচ কেউ


উপরের স্নিপেট যোগ করার প্রয়োজন কোথায়?
কামিনী

4

আপনি পরীক্ষা করা উচিত যে spring.handlersএবং spring.schemasফাইল ক্লাসপাথ উপর এবং ডান কন্টেন্ট আছে।

এটি দিয়ে করা যেতে পারে ClassLoader.getResource(..)। আপনি রানটাইম পরিবেশে একটি রিমোট ডিবাগার দিয়ে পদ্ধতিটি চালাতে পারেন । এক্সটেনসিবল এক্সএমএল অনুমোদনের সেটআপটি বসন্ত রেফারেন্স বি .৫- এ বর্ণিত হয়েছে হ্যান্ডলার এবং স্কিমা নিবন্ধন করা হচ্ছে

সাধারণত, ফাইলগুলি স্প্রিং জারে (স্প্রিংফ্রেমওয়ার্ক.জার / মিতা-আইএনএফ /) এবং ক্লাসপথে থাকতে হবে যখন স্প্রিং শুরু করা যায়।


1
হাই, আপনার সমাধান খুব জটিল; আমি বুঝতে পারছি না তুমি কি বোঝাতে চাও? jroller.com/marshbourdon/entry/used_spring_2_x_xML , আমি এটি চেষ্টা করেছি কিন্তু এটি কার্যকর হয়নি। কোনও পরামর্শ ? কোনও ইন্টারনেট সংযোগ না থাকা অবস্থায় কোনও ওয়েব অ্যাপ কাজ করা জটিল হতে পারে না। আমি কি সঠিক ? ধন্যবাদ।
Altug

1
বসন্ত বাক্সের বাইরে কাজ করা উচিত। আপনার ক্লাসপথের সাথে কিছু ভুল। আমার উত্তরটিতে আপনার সমস্যাটি বিশ্লেষণ করার জন্য কিছু ইঙ্গিত রয়েছে।
থমাস জং

2

শ্রেণীর পথ সন্ধান করুন

আপনি যদি গ্রিপস ব্যবহার করছেন তবে সংশ্লিষ্ট জার ফাইলটিতে ক্লিক করুন। যান -> মিতা-ইনফ-> ওপেন ফাইল স্প্রিং.সেমাস

আপনি নীচের মত লাইন দেখতে পাবেন।

http://www.springframework.org/schema/context/spring-context.xsd=org/springframework/context/config/spring-context-3.1.xsd

কপি পরে = এবং নীচে মত মটরশুটি কনফিগার।

<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util" xmlns:rabbit="http://www.springframework.org/schema/rabbit" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/rabbit classpath:org/springframework/amqp/rabbit/config/spring-rabbit-1.1.xsd http://www.springframework.org/schema/beans classpath:org/springframework/beans/factory/xml/spring-beans-3.1.xsd http://www.springframework.org/schema/context classpath:org/springframework/context/config/spring-context-3.1.xsd http://www.springframework.org/schema/util classpath:org/springframework/beans/factory/xml/spring-util-3.1.xsd">


আমি এক্সএমএল স্প্রিংফ্রেমওয়ার্ক.আর্গ / স্কেমা / আরবিট শ্রেণিপথ: org / বসন্তের ফ্রেমওয়ার্ক / এমকিপি / খরগোশ / কনফিগারেশন / বসন্ত-খরগোশ-১...xsd এ পরিবর্তন করেছি তবে এটি স্কিমা নথি 'ক্লাসপাথ: ব্যর্থ / স্প্রিংফ্রেমওয়ার্ক / এমকিপিপি / পড়তে ব্যর্থ হয়েছে says খরগোশ / কনফিগারেশন / বসন্ত-খরগোশ-1.6.xsd '? যে কোনও পরামর্শ
ললিত মেহরা

1

আপনার বিনের সংজ্ঞাতে আপনাকে স্কিমা অবস্থানগুলি যুক্ত করতে হবে এবং তারপরে সেগুলি নেট থেকে সংগ্রহের পরিবর্তে শ্রেণিপথে পাওয়া যাবে। আপনার ফর্ম্যাটিং সমস্যাগুলি দেওয়া, আমি 100% নিশ্চিত নই যে আপনি ইতিমধ্যে এটি করছেন না।

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
    http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd">
<!-- empty: the beans we use are in the base class's context. -->
</beans>

1

আমরা এটি করে সমস্যার সমাধান করেছি:

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(true);
factory.setValidating(false); // This avoid to search schema online
factory.setAttribute("http://java.sun.com/xml/jaxp/properties/schemaLanguage", "http://www.w3.org/2001/XMLSchema");
factory.setAttribute("http://java.sun.com/xml/jaxp/properties/schemaSource", "TransactionMessage_v1.0.xsd");

দয়া করে মনে রাখবেন যে আমাদের অ্যাপ্লিকেশনটি একটি জাভা স্ট্যান্ডলোন অফলাইন অ্যাপ।


1

আপনি যদি আপনার বিকাশের জন্য গ্রহটিকে ব্যবহার করছেন তবে আপনি যদি গ্রহনের জন্য নির্দিষ্ট বাজারের জন্য বাজারের স্থান থেকে এসিএস প্লাগইন ইনস্টল করেন তবে এটি সহায়তা করে।

এখন আপনি যখন প্রকল্পের অভ্যন্তরে কোনও ফোল্ডারে (সাধারণত সংস্থানসমূহ) একটি নতুন কনফিগারেশন ফাইল তৈরি করার চেষ্টা করবেন, তখন বিকল্পগুলির একটি "স্প্রিং ফোল্ডার" থাকতে পারে এবং আপনি একটি "স্প্রিং বিন বিন্যাস ফাইল" বিকল্পটি বসন্ত> স্প্রিং বিন কনফিগারেশন ফাইল চয়ন করতে পারেন।

এই বিকল্পটি নির্বাচিত হওয়ার সাথে সাথে, আপনি যখন পদক্ষেপগুলি অনুসরণ করেন, এটি আপনাকে নামস্থান এবং নির্দিষ্ট সংস্করণগুলির জন্য নির্বাচন করতে বলে:

এবং তাই অস্তিত্বহীন জার বা পুরাতন সংস্করণ থাকার সম্ভাবনাটি দূর করা যায়।

ছবিগুলি পোস্টও করত তবে আমার খ্যাতি বেশ কম .. :(


1

সমস্যাটি আপনি নিজের অ্যাপ্লিকেশনটিতে ব্যবহার করেন এমন JAR ফাইলগুলির মধ্যে রয়েছে।

আমি যা করেছি, যা কাজ করেছিল তা হ'ল আমি যে সংস্করণটি ব্যবহার করছি তার সাথে মিলে যায় স্প্রিং-কোর, স্প্রিং-বিয়ানস, স্প্রিং-কনটেক্সট, স্প্রিং-টিএক্সের জারগুলির ভিতরে। মেটা-আইএনএফ ফোল্ডারের মধ্যে, আমি এই সমস্ত জেআর-তে আসা সমস্ত বসন্ত.হ্যান্ডলারের এবং বসন্ত.চেমাসকে সম্মতি দিয়েছি।

আমি একটি পাথর দিয়ে দুটি পাখি মেরেছি, আমি স্কিমার সমস্যার সমাধান করেছি তাই এটি অফলাইন মোডেও সঠিকভাবে কাজ করে।

PS আমি ছায়া এবং ট্রান্সফর্মারগুলির জন্য মাভেন প্লাগইন চেষ্টা করেছি কিন্তু এটি কার্যকর হয়নি।


আপনি কীভাবে এই সমস্যার সমাধান করেছেন, আপনি কি দয়া করে তা বুঝতে আমাকে সহায়তা করতে পারেন? আমি প্রয়োজন
কামিনী

1

আমার এই সমস্যা ছিল উত্তরোত্তর জন্য, আমার ব্যতিক্রম ছিল:

org.xml.sax.SAXParseException; lineNumber: 7; columnNumber: 117;
schema_reference.4: Failed to read schema document
'http://www.springframework.org/schema/beans/spring-beans-4.2.xsd'

যখন আমি সংস্করণ উপলব্ধি আমি এটা মীমাংসিত spring-beansআমার ম্যাভেন উল্লেখিত pom.xmlহয়েছিল 4.1.x, এইভাবে নির্দিষ্ট অর্থ .xsdক্লাসপাথ পাওয়া যাবে না।

এটি দীর্ঘদিন ধরে মুখোশযুক্ত ছিল কারণ আমি সাধারণত অনলাইনে থাকি, তাই আমি ভেবেছিলাম যে অফলাইনে থাকায় বিল্ডটি "ভেঙে গেছে"। তবে এর সাথে আসলে কিছুই করার ছিল না। আপডেট করা হচ্ছে আমার pom.xmlসঠিক সংস্করণ উল্লেখ করতে spring-beans, যথা 4.2.x, এটা স্থির করেছি।


1

আমি যখন বসন্ত-প্রসঙ্গ সংস্করণ 4.0.6 এবং বসন্ত-সুরক্ষা সংস্করণ 4.1.0 ব্যবহার করি তখন একই সমস্যা ছিল।

আমার পম এবং সুরক্ষা এক্সএমএল -> স্কিমা লোকেশনে স্প্রিং-সিকিউরিটি সংস্করণ 4.0.4 (কারণ স্প্রিং-সিকিউরিটির 4.0.০. available উপলভ্য নয়) তে পরিবর্তন করা যায়, এটি ইন্টারনেট ছাড়াই সংকলিত হয়।

সুতরাং এর অর্থ আপনি এর মাধ্যমে এটিও সমাধান করতে পারেন:

  • বসন্ত-প্রসঙ্গের তুলনায় পুরানো বা একই সংস্করণে বসন্ত-সুরক্ষা পরিবর্তন করা।

  • বসন্ত-সুরক্ষার চেয়ে নতুন বা একই সংস্করণে বসন্ত-প্রসঙ্গ পরিবর্তন করা।

(যে কোনও উপায়ে বসন্ত-প্রসঙ্গটি বসন্ত-সুরক্ষার জন্য নতুন বা একই সংস্করণ হতে হবে)


0

আমি এই আলোচনার কিছু অতিরিক্ত দিক যুক্ত করতে চাই। উইন্ডোজ ওএসে আমি লক্ষ্য করেছি যে যখন স্কিমার সমন্বিত একটি জার ফাইল কোনও ডিরেক্টরিতে সংরক্ষণ করা হয় যার পথে একটি স্থান অক্ষর রয়েছে, উদাহরণস্বরূপ নীচের উদাহরণটির মতো

"c:\Program Files\myApp\spring-beans-4.0.2.RELEASE.jar"

তারপরে আপনি যখন কিছু স্ট্যান্ডअ্যালোন অ্যাপ্লিকেশন বিকাশ করছেন যা অফলাইনেও কাজ করা উচিত তখন নিম্নলিখিত পদ্ধতিতে স্কিমা অবস্থানের URL নির্দিষ্ট করে দেওয়া যথেষ্ট নয়

<beans
 xsi:schemaLocation="
   http://www.springframework.org/schema/beans org/springframework/beans/factory/xml/spring-beans-2.0.xsd"
    />

আমি শিখেছি যে এই জাতীয় স্কিমার অবস্থানের ফলাফলের ইউআরএল রেজোলিউশন এমন ফাইল যা নিম্নলিখিতগুলির মতো পথ রয়েছে

"c:\Program%20Files\myApp\spring-beans-4.0.2.RELEASE.jar"

আমি যখন অন্য কোনও ডিরেক্টরি থেকে আমার অ্যাপ্লিকেশন শুরু করেছি যার পথে কোনও স্থানের অক্ষর নেই তবে স্কিমা অবস্থানের রেজোলিউশনটি ভাল কাজ করেছিল। কেউ আবার একই সমস্যার সম্মুখীন হতে পারে? তবুও আমি আবিষ্কার করেছি যে ক্লাসপাথ প্রোটোকলটি আমার ক্ষেত্রে ঠিকঠাক কাজ করে

<beans
 xsi:schemaLocation="
   http://www.springframework.org/schema/beans classpath:org/springframework/beans/factory/xml/spring-beans-2.0.xsd"
    />

0

আমিও একই ধরণের সমস্যার মধ্যে পড়েছিলাম। আমার ক্ষেত্রে, আমার রেজোলিউশনটি একেবারেই আলাদা। আমার বসন্তের প্রসঙ্গে xML ফাইলটি এখানে:

...
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
    http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans.xsd 
    http://www.springframework.org/schema/context 
    http://www.springframework.org/schema/context/spring-context.xsd">
...

আমি কোনও এক্সএসডি সংস্করণ উল্লেখ করছি না কারণ আমি বসন্তকে বসন্তের নির্ভরতার মধ্যে সর্বশেষতম এক্সএসডি সংস্করণটি ব্যবহার করতে চাই। আমার অ্যাপ্লিকেশনটি ব্যবহৃত স্প্রিং সংস্করণটি হ'ল বসন্ত-মটরশুটি -৩.৩.১.আলিইএসই.জার: ৪.৩.১.আরলেস এবং যখন আমি আমার অ্যাপ্লিকেশনটিকে জারে জমা করি তখন সমস্ত ক্লাসপথের মধ্যে বসন্তের নির্ভরতা বিদ্যমান। তবে, আমার বসন্ত অ্যাপ্লিকেশন প্রসঙ্গটি শুরু করার সময় আমি নিম্নলিখিত ত্রুটি পেয়েছি:

org.xml.sax.SAXParseException: schema_reference.4: Failed to read schema document 'http://www.springframework.org/schema/beans/spring-beans.xsd', because 1) could not find the document; 2) the document could not be read; 3) the root element of the document is not <xsd:schema>.

কিছুটা কঠিন সমস্যার সমাধানের পরে, আমি খুঁজে পেলাম যে সমস্যাটি আমার জার ফাইলের মেটা-আইএনএফ ফোল্ডারের ভিতরে থাকা সূচী তালিকাটির কারণে । সঙ্গে index.list ফাইল, বসন্ত নামস্থান হ্যান্ডেলার সঠিকভাবে বসন্ত আবেদন প্রেক্ষাপটে XML বিশ্লেষণ করতে অবস্থিত করা যাবে না। আপনি এই বসন্ত ইস্যু সম্পর্কে আরও পড়তে পারেন এসপিআর -5705

আমার মাভেন-জার-প্লাগইন থেকে সূচি অপসারণ করে , আমি সমস্যাটি সমাধান করার জন্য পরিচালনা করি। আশা করি একই সমস্যাযুক্ত লোকদের জন্য এটি কিছু সময় সাশ্রয় করবে।


0

কেবলমাত্র নিশ্চিত হয়ে নিন যে প্রাসঙ্গিক স্প্রিং জার ফাইলটি আপনার রানটাইম ক্লাসপথে রয়েছে। আমার ক্ষেত্রে এটি আমরা রানটাইম ক্লাসপাথ থেকে বসন্ত-tx-4.3.4.RELEASE.jar হারিয়েছিলাম। এই বয়াম যুক্ত করার পরে, সমস্যাটি সমাধান করা হয়েছিল।


0

আপনার প্ল্যাটফর্মে যদি কোনও ইন্টারনেট সংযোগ না থাকে এবং আপনি গ্রহনটি ব্যবহার করেন তবে এই পদক্ষেপগুলি অনুসরণ করুন (এটি আমার সমস্যার সমাধান করে)

  1. সঠিক xsd ফাইলগুলি সন্ধান করুন (আপনি এই ফাইলগুলি তাদের জার থেকে আনজিপ করতে পারেন For
  2. এই এক্সএসডি ফাইলগুলি এক্সিলিপ এক্সএমএল ক্যাটালগে যুক্ত করুন। (পছন্দসমূহ-> এক্সএমএল-> এক্সএমএল ক্যাটালগ, ফাইলগুলি যুক্ত করুন)
  3. কনফিগারেশন ফাইলে এই ফাইলগুলির অবস্থান যুক্ত করুন। (সাবধান থাকুন, ফাইলের সঠিক সংস্করণটি লিখুন)

উদাহরণ:

এক্সসি: স্কিমা লোকেশন = " http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-xyxsd "


-1

আপনি সম্প্রতি ওয়েব-ইনফ -> লিবে যোগ করেছেন এমন জারগুলি সরান। উদাহরণস্বরূপ jstl jars।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.