OSGI рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИ
рдореИрдВ рдХрдИ рдмрд╛рд░ рдорд┐рд▓ рдЪреБрдХрд╛ рд╣реВрдВ рдХрд┐ рдУрдПрд╕рдЬреАрдЖрдИ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред рдФрд░ рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╡рд╣ рдЦреБрдж рднреА рдПрдХ рдмрд╛рд░ рдРрд╕реА рд░рд╛рдп рд░рдЦрддреЗ рдереЗред рд╡рд░реНрд╖ 2009 рдореЗрдВ, рд╕рдЯреАрдХ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдПред рдЙрд╕ рд╕рдордп, рд╣рдордиреЗ рдореЗрд╡реЗрди рдЯрд╛рдЗрдХреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рдПрдХрддреНрд░ рдХреАрдВ, рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╡рд┐рд╖реБрд╡ рдореЗрдВ рддреИрдирд╛рдд рдХрд┐рдпрд╛ред рдФрд░ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ JavaEE рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдФрд░ рдЕрд╕реЗрдВрдмрд▓ рдХрд░рдиреЗ рд╕реЗ рдЬреНрдпрд╛рджрд╛ рдХрдард┐рди рдерд╛ (рдЙрд╕ рд╕рдордп EJB 3 рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг рдмрд╕ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛, рдЬрд┐рд╕реЗ рд╣рдордиреЗ рд╕реНрд╡рд┐рдЪ рдХрд┐рдпрд╛ рдерд╛)ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡рд┐рд╖реБрд╡ рд╡реЗрдмрд▓реЙрдЬрд┐рдХрд▓ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдХрдо рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдерд╛, рдФрд░ рдУрдПрд╕рдЬреАрдЖрдИ рдХреЗ рд▓рд╛рдн рдореЗрд░реЗ рд▓рд┐рдП рддрдм рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рдереЗред
рд▓реЗрдХрд┐рди рдлрд┐рд░, рдХрдИ рд╕рд╛рд▓реЛрдВ рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ рдПрдХ рдирдИ рдиреМрдХрд░реА рдкрд░ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╢реБрд░реВ рдХрд░рдиреА рдкрдбрд╝реА, рдЬрд┐рд╕рдХреА рдХрд▓реНрдкрдирд╛ рдЕрдкрд╛рдЪреЗ рдХреИрдорд▓ рдФрд░ рдЕрдкрд╛рдЪреЗ рдХрд░рдл рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдХреА рдЧрдИ рдереАред рдпрд╣ рдореЗрд░рд╛ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдерд╛, рдореИрдВ рдЙрд╕ рд╕рдордп рддрдХ рдХреИрдорд▓ рдХреЛ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдЬрд╛рдирддрд╛ рдерд╛, рдФрд░ рдХрд░рдл рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрдврд╝рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдПрдХ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЗ рдмрд┐рдирд╛ рднреАред рдореИрдВрдиреЗ рдЗрд╕реЗ рдПрдХ рд╢рд╛рдо рдкрдврд╝рд╛, рдФрд░ рдорд╣рд╕реВрд╕ рдХрд┐рдпрд╛ - рдпрд╣рд╛рдБ рдпрд╣ рдПрдХ рд╕рд░рд▓ JavaEE рдХреА рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд▓рдЧрднрдЧ рдПрдХ рд╣реА рд╕рдорд╛рдзрд╛рди рд╣реИ, рд╕рд░рд▓ рдФрд░ рддреИрдпрд╛рд░ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд╕рдорд╛рди рдореИрдВрдиреЗ рдПрдХ рдмрд╛рд░ рдЕрдкрдиреЗ рдШреБрдЯрдиреЗ рдкрд░ Weblogic WLST, Jython, рдФрд░ Mav Aether рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдерд╛ред
рддреЛ, рдЪрд▓рд┐рдП рдмрддрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк Karaf рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ OSGI рдХреЛ рдЖрдЬрд╝рдорд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд░рддреЗ рд╣реИрдВред рд╣рдо рдХрд╣рд╛рдВ рд╕реЗ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ?
рдЕрдЧрд░ рдЖрдк рдПрдХ рдЧрд╣рд░реА рд╕рдордЭ рдЪрд╛рд╣рддреЗ рд╣реИрдВ
рдЖрдк рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдкреНрд░рд▓реЗрдЦрди рдкрдврд╝рдХрд░ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдФрд░ рдпрд╣ рд╣реЛрдмреЗ рдХреЗ рд╕рд╛рде рд╕рдВрднрд╡ рд╣реИ - рдпрд╣рд╛рдВ рдмрд╣реБрдд рдЕрдЪреНрдЫреЗ рд▓реЗрдЦ рдереЗ, рдРрд╕рд╛ рдмрд╣реБрдд рдкрд╣рд▓реЗ рдХрд╣ рджрд┐рдпрд╛ рдерд╛ред рд▓реЗрдХрд┐рди рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдХрд░рдл рдХреЛ рдЕрдм рддрдХ рдЕрд╡рд╛рдВрдЫрдиреАрдп рд░реВрдк рд╕реЗ рдмрд╣реБрдд рдХрдо рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдпрд╛
рдЗрд╕ рдкрд░ рдХреБрдЫ рдФрд░ рд╕рдореАрдХреНрд╖рд╛рдПрдБ рдереАрдВред рдХрд░рдл рдХреЗ
рдЗрд╕ рдЙрд▓реНрд▓реЗрдЦ рдХреЛ рдЫреЛрдбрд╝рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рд╡реЗ рдХрд╣рддреЗ рд╣реИрдВ, рд░рд╛рдд рдХреЗ рд▓рд┐рдП рд╕реЛрд╡рд┐рдпрдд рд╕рдорд╛рдЪрд╛рд░ рдкрддреНрд░ рдирд╣реАрдВ рдкрдврд╝реЗрдВ ... рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЖрдкрдХреЛ рдмрддрд╛рдПрдВрдЧреЗ рдХрд┐ рдХрд░рдл рдПрдХ OSGI рдврд╛рдВрдЪрд╛ рд╣реИ - рдЗрд╕рд▓рд┐рдП рдЖрдк рдЗрд╕реЗ рдирд╣реАрдВ рдорд╛рдирддреЗ рд╣реИрдВред OSGI рдЪреМрдЦрдЯреЗ рдЕрдкрд╛рдЪреЗ рдлреЗрд▓рд┐рдХреНрд╕ рдпрд╛ рдПрдХреНрд▓рд┐рдкреНрд╕ рдЗрдХреНрд╡рд┐рдиреЙрдХреНрд╕ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдХрд░рд╛рдл рд╕рд┐рд░реНрдл рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЖрдк рдЙрдирдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВред
рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЬрдм Jboss рдлреНрдпреВрдЬ, рдпрд╛ Apache ServiceMix рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ "рдкреВрд░реНрд╡рдирд┐рд░реНрдорд┐рдд рдШрдЯрдХреЛрдВ рдХреЗ рд╕рд╛рде рдХрд░рдл" рдХреЗ рд░реВрдк рдореЗрдВ рдкрдврд╝рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрд░реНрдерд╛рддреНред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ - рдПрдХ рд╣реА рдЪреАрдЬ, рдХреЗрд╡рд▓ рд╡рд┐рдХреНрд░реЗрддрд╛ рджреНрд╡рд╛рд░рд╛ рдПрдХрддреНрд░ рдХреА рдЧрдИред рдореИрдВ рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдЗрд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рдирд╣реАрдВ рджреВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реЗрд╡рд╛рдорд┐рдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рдореАрдХреНрд╖рд╛ рд▓реЗрдЦ рдкрдврд╝рдирд╛ рдХрд╛рдлреА рд╕рдВрднрд╡ рд╣реИред
рдЗрд╕рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдмрд╣реБрдд рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдБрдЧрд╛ рдХрд┐ OSGI рдХреНрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХрд╛ рдХреНрдпрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рджреНрд╡рд╛рд░рд╛ рдФрд░ рдмрдбрд╝реЗ, OSGI рдореЙрдбреНрдпреВрд▓ рд╕реЗ рдЬрд╛рд╡рд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдХрд░рдг рд╣реИред рдПрдХ рдХрд░реАрдмреА рдПрдирд╛рд▓реЙрдЧ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, JavaEE, рдФрд░ рдХреБрдЫ рд╣рдж рддрдХ OSGI рдХрдВрдЯреЗрдирд░ JavaEE рдореЙрдбреНрдпреВрд▓ (рд╡рд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди) рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рджреВрд╕рд░реА рдУрд░, рдХрдИ JavaEE рдХрдВрдЯреЗрдирд░реЛрдВ рдореЗрдВ OSGI рдХреЛ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдореЙрдбреНрдпреВрд▓рд░рддрд╛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рдзрди рдХреЗ рд░реВрдк рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред "ред рдпрд╣реА рд╣реИ, JavaEE рдФрд░ OSGI рд╕рдВрдЧрддрддрд╛ рдХреЗ рд╕рдорд╛рди рдЪреАрдЬреЗрдВ рд╣реИрдВ, рдФрд░ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреВрд░рдХ рд╣реИрдВред
рдХрд┐рд╕реА рднреА рдореЙрдбреНрдпреВрд▓рд░ рдкреНрд░рдгрд╛рд▓реА рдХрд╛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣рд┐рд╕реНрд╕рд╛ рдЦреБрдж рдореЙрдбреНрдпреВрд▓ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рд╣реИред рдУрдПрд╕рдЬреАрдЖрдИ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдореЙрдбреНрдпреВрд▓ рдХреЛ рдПрдХ рдмрдВрдбрд▓ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдПрдХ рдЬрд╛рд░ рд╕рдВрдЧреНрд░рд╣ рд╣реИ рдЬреЛ рд╕рднреА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдкрд░рд┐рд╡рд░реНрдзрди рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЕрд░реНрдерд╛рдд, рдпрд╣ рдпрд╣рд╛рдВ рдмрд╣реБрдд рд╕рдорд╛рди рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпреБрджреНрдз рдпрд╛ рдХрд╛рди рдХреЗ рд▓рд┐рдП)ред рдЬрд╛рд╡рд╛рдИрдИ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдирддрд╛ рд╕реЗ, рдмрдВрдбрд▓ рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдирд┐рд░реНрдпрд╛рдд рдФрд░ рдЖрдпрд╛рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рд╡рд░реНрдЧ рд╡рд┐рдзрд┐рдпрд╛рдВ рд╣реИрдВ (рдЕрд░реНрдерд╛рдд, рдПрдХ рд╕реЗрд╡рд╛ рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕, рдпрд╛ рдПрдХ рдХрдХреНрд╖рд╛ рдХреЗ рд╕рднреА рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рддрд░реАрдХреЗ рд╣реИрдВ)ред
рдмрдВрдбрд▓ рдореЗрдЯрд╛рдбреЗрдЯрд╛ META-INF / MANIFEST.MF рд╕реЗ рд╕рднреА рдХреЛ рдкрд░рд┐рдЪрд┐рдд рд╣реИред OSGI рдореИрдирд┐рдлрд╝реЗрд╕реНрдЯ рдХреЗ рд╣реЗрдбрд░, JRE рдХреЗ рд╣реЗрдбрд░ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рдЪреНрдЫреЗрдж рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдХреНрд░рдорд╢рдГ, OSGI рдХрдВрдЯреЗрдирд░ рдмрдВрдбрд▓ рдХреЗ рдмрд╛рд╣рд░ рдПрдХ рдирд┐рдпрдорд┐рдд рдЬрд╛рд░ рд╣реИред рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреЗ рдмреАрдЪ рд╣рдореЗрд╢рд╛ рд╣реЛрддреЗ рд╣реИрдВ:
Bundle-SymbolicName: com.example.myosgi Bundle-Version: 1.0.0
рдпреЗ рдмрдВрдбрд▓ рдХреЗ "рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ" рд╣реИрдВ, рдФрд░ рдпрд╣ рддрдереНрдп рдХрд┐ рд╣рдо рдПрдХ рд╣реА рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдПрдХ рд╣реА рдмрдВрдбрд▓ рдХреЗ рджреЛ рдпрд╛ рдЕрдзрд┐рдХ рдПрдХ рд╕рд╛рде рд╕реНрдерд╛рдкрд┐рдд рдФрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╕рдВрд╕реНрдХрд░рдг рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВред
JavaEE рдХреЗ рд╕рдорд╛рди, рдмрдВрдбрд▓реЛрдВ рдореЗрдВ рдПрдХ рдЬреАрд╡рди рдЪрдХреНрд░ рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:

рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдмрдВрдбрд▓ рдкреИрдХреЗрдЬ рдФрд░ рдкреИрдХреЗрдЬ (рдкреИрдХреЗрдЬ, рдЬрд╛рд╡рд╛ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рдЕрд░реНрде рдореЗрдВ) рднреА рдЖрдпрд╛рдд рдФрд░ рдирд┐рд░реНрдпрд╛рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдирд┐рд░реНрдпрд╛рдд рдкреИрдХреЗрдЬ рдмрдВрдбрд▓ рдХреЗ рдЕрдВрджрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдП рдЧрдП рд╣реИрдВ, рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдмрдВрдбрд▓ рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрдиреЗ рдкрд░ рдЕрдиреНрдп рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдХрд░рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдпрд╛рддрд┐рдд рд▓реЛрдЧреЛрдВ рдХреЛ рдХрд╣реАрдВ рдмрд╛рд╣рд░ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдХрд┐рд╕реА рдХреЗ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдХрдВрдЯреЗрдирд░ рджреНрд╡рд╛рд░рд╛ рдмрдВрдбрд▓ рдХреЛ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рд╡рд╣ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рд╕рдХреЗред
рдкреИрдХреЗрдЬ рдЖрдпрд╛рдд рдХреЛ рд╡реИрдХрд▓реНрдкрд┐рдХ, рд╕рд╛рде рд╣реА рд╕реЗрд╡рд╛ рдЖрдпрд╛рдд рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдпрд╣ рдХрд╛рдлреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдЖрдпрд╛рдд рдФрд░ рдирд┐рд░реНрдпрд╛рдд рдореЗрдВ рд╕рдВрд╕реНрдХрд░рдг (рдпрд╛ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреА рд╢реНрд░реЗрдгреА) рдХрд╛ рд╕рдВрдХреЗрдд рд╣реЛрддрд╛ рд╣реИред
JavaEE рд╕реЗ рдЕрдВрддрд░
рдЦреИрд░, рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдПрдХ рдЬреИрд╕реЗ рд╣реИрдВ - рд╣рдо рд╕рдордЭ рдЧрдПред рдФрд░ рд╡реЗ рдХреИрд╕реЗ рднрд┐рдиреНрди рд╣реЛрддреЗ рд╣реИрдВ?
рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдореБрдЦреНрдп рдЕрдВрддрд░ рдпрд╣ рд╣реИ рдХрд┐ рдУрдПрд╕рдЬреАрдЖрдИ рд╣рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд▓рдЪреАрд▓рд╛рдкрди рджреЗрддрд╛ рд╣реИред рдПрдХ рдмрд╛рд░ рдмрдВрдбрд▓ STARTED рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИ, рддреЛ рд╕рдВрднрд╛рд╡рдирд╛рдПрдБ рдХреЗрд╡рд▓ рдЖрдкрдХреА рдХрд▓реНрдкрдирд╛ рджреНрд╡рд╛рд░рд╛ рд╕реАрдорд┐рдд рд╣реИрдВред рдорд╛рди рд▓реЗрдВ рдХрд┐ рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рдереНрд░реЗрдбреНрд╕ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ (рд╣рд╛рдВ, рд╣рд╛рдВ, рдореБрдЭреЗ ManagedExecutorService рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рд╣реИ), рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдХрдиреЗрдХреНрд╢рди рдкреВрд▓ рдЖрджрд┐ред рдПрдХ рдХрдВрдЯреЗрдирд░ рдЬрд╛рд╡рд╛ рд░рд┐рд╕реЛрд░реНрд╕ рдХреЗ рд╕рдорд╛рди рд╕рднреА рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рдирд╣реАрдВ рд░рдЦрддрд╛ рд╣реИред
рдЖрдк рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдирдИ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдирд┐рд░реНрдпрд╛рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред JavaEE рдореЗрдВ рдХрд╣реЗрдВ рдХрд┐ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдПрдХ рдирдпрд╛ рд╕рд░реНрд╡рд▓реЗрдЯ рдмрдирд╛рдПрдВ? рдФрд░ рдпрд╣рд╛рдВ рдпрд╣ рдХрд╛рдлреА рд╕рдВрднрд╡ рд╣реИ, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЬреЗрдЯреА рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдирд┐рд░реНрдорд┐рдд рдХрд░рд╛рдл рд╕рд░реНрд╡рд▓реЗрдЯ рдХрдВрдЯреЗрдирд░ рдХреЛ рдЖрдкрдХреЗ рдмрдирд╛рдП рдЧрдП рд╕рд░реНрд╡рд▓реЗрдЯ рджреНрд╡рд╛рд░рд╛ рддреБрд░рдВрдд рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдпрд╣ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ URL рдкрд░ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛ред
рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдереЛрдбрд╝рд╛ рд╕рд░рд▓реАрдХрд░рдг рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЗрд╕рдХреЗ рд╢рд╛рд╕реНрддреНрд░реАрдп рд░реВрдк рдореЗрдВ JavaEE рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдореЗрдВ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдШрдЯрдХ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:
- рдирд┐рд╖реНрдХреНрд░рд┐рдп, рдЧреНрд░рд╛рд╣рдХ рд╕реЗ рдХреЙрд▓ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдореЗрдВ
- рд╡реИрдзрд╛рдирд┐рдХ рд░реВрдк рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд, рдЕрд░реНрдерд╛рддреН, рдЖрд╡реЗрджрди рдХреА рддреИрдирд╛рддреА рдХреЗ рд╕рдордпред
рджреВрд╕рд░реА рдУрд░, OSGI- рдЖрдзрд╛рд░рд┐рдд рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдореЗрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ:
- рд╕рдХреНрд░рд┐рдп рдФрд░ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдЕрдиреБрд╕реВрдЪрд┐рдд рдШрдЯрдХ, рдорддрджрд╛рди рдХрд░рдирд╛, рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ, рд╕реЙрдХреЗрдЯ рд╕реБрдирдирд╛, рдЖрджрд┐ред
- рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдФрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
- рдЖрдк рдлреНрд░реЗрдорд╡рд░реНрдХ рдШрдЯрдирд╛рдУрдВ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реЗрд╡рд╛рдУрдВ, рдмрдВрдбрд▓реЛрдВ рдЖрджрд┐ рдХреЗ рдкрдВрдЬреАрдХрд░рдг рдХреЛ рд╕реБрдиреЗрдВ, рдЕрдиреНрдп рдмрдВрдбрд▓реЛрдВ рдФрд░ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдВрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ, рдФрд░ рдмрд╣реБрдд рдХреБрдЫ рдХрд░реЗрдВред
рд╣рд╛рдВ, JavaEE рдкрд░, рдЗрд╕рдХрд╛ рдЕрдзрд┐рдХрд╛рдВрд╢ рднрд╛рдЧ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рд╕рдВрднрд╡ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, JNDI рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ), рд▓реЗрдХрд┐рди OSGI рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдЗрд╕реЗ рдЖрд╕рд╛рди рдмрдирд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдпрд╣рд╛рдБ рд╢рд╛рдпрдж рдХреБрдЫ рдФрд░ рдЬреЛрдЦрд┐рдо рд╣реИрдВред
рдХрд░рдл рдФрд░ рд╢реБрджреНрдз OSGI рдХреЗ рдмреАрдЪ рдЕрдВрддрд░
рдХрд░рдл рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдмрд╣реБрдд рд╕рд╛рд░реА рдЙрдкрдпреЛрдЧреА рдЪреАрдЬреЗрдВ рд╣реИрдВред рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рдХрд░рдл рдУрдПрд╕рдЬреАрдЖрдИ рдврд╛рдВрдЪреЗ рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдХрд░рдг рд╣реИ - рд╡рд╣рд╛рдВ рдмрдВрдбрд▓ (рд╕рдореВрд╣реЛрдВ рд╕рд╣рд┐рдд) рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛, рдЙрдиреНрд╣реЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛, рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдирд╛, рд░реЛрд▓ рдореЙрдбрд▓ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдирд╛ рдФрд░ рд╕реБрд░рдХреНрд╖рд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛, рдФрд░ рдкрд╕рдВрдж рдХрд░рдирд╛ред
рдФрд░ рдЪрд▓реЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрднреНрдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ?
рдареАрдХ рд╣реИ, рдЪрд▓реЛ рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рдпрд╣рд╛рдВ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдХреБрдЫ рдирд╣реАрдВ рд╣реИ - karaf.apache.org рдкрд░ рдЬрд╛рдПрдВ, рд╡рд┐рддрд░рдг рдкреИрдХреЗрдЬ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ, рдЗрд╕реЗ рдЕрдирдкреИрдХ рдХрд░реЗрдВред рд╡рд┐рднрд┐рдиреНрди OSGI рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛рдУрдВ (4, 5 рдпрд╛ 6), рдФрд░ рдЬрд╛рд╡рд╛ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рдорд░реНрдерди рдореЗрдВ рдХрд░рдл рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рднрд┐рдиреНрди рд╣реЛрддреЗ рд╣реИрдВред рдореИрдВ 2.x рдкрд░рд┐рд╡рд╛рд░ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдирд╣реАрдВ рдХрд░рддрд╛, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ 3 рд╣реИрдВ (рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЬрд╛рд╡рд╛ 8 рд╣реИ, рдореЗрд░реА рддрд░рд╣), рдФрд░ 4 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЖрдЬ рдХреЗрд╡рд▓ 4.x рдкрд░рд┐рд╡рд╛рд░ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛ рд░рд╣рд╛ рд╣реИ (рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг 4.2.2, рдпрд╣ OSGI 6 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ (рдЬрд╛рд╡рд╛ 10 рддрдХ)ред
Karaf рд╡рд┐рдВрдбреЛрдЬ рдФрд░ рд▓рд┐рдирдХреНрд╕ рдХреЗ рддрд╣рдд рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЖрдкрдХреЛ рдПрдХ рд╕реЗрд╡рд╛ рдмрдирд╛рдиреЗ рдФрд░ рдСрдЯреЛрд░рди рдЙрдкрд▓рдмреНрдз рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред MacOS рдФрд░ рдХрдИ рдЕрдиреНрдп рдкреНрд░рдХрд╛рд░ рдХреЗ рдпреВрдирд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рднреА рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдпрджрд┐ рдЖрдк рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рд╣реИрдВ, рддреЛ рдЖрдк рдЖрдорддреМрд░ рдкрд░ рдХрд░рдл рдХреЛ рддреБрд░рдВрдд рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдпрд╣ рдЖрдорддреМрд░ рдкрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ, рдпрд╣ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХрд╣рд╛рдВ рд╕реЗ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╣реИред рдЖрдорддреМрд░ рдкрд░ рдпрд╣ рдПрдХ рдХреЙрд░реНрдкреЛрд░реЗрдЯ рдиреЗрдХреНрд╕рд╕ рд╣реЛрдЧрд╛, рдпрд╛ рдХрд╣реЗрдВ рдХрд┐ рдЖрд░реНрдЯрд┐рдлреИрдХреНрдЯ, рдЬреЛ рднреА рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реИред рд╡рд┐рддрд░рдг рдХреЗ рдЖрджрд┐ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ karaf рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реНрдерд┐рдд рд╣реИред рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдирд╛рдо рдмрд╣реБрдд рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЖрдкрдХреЛ org.ops4j.pax.url.mvn.cfg рдлрд╝рд╛рдЗрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдкреНрд░рд╛рд░реВрдк рдЬрд╛рд╡рд╛ рдЧреБрдг рд╣реИред
рдЖрдк рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣реА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА (рдПрд╕) рджреЛрдиреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдпреВрдЖрд░рдПрд▓ рдХреА рд╕реВрдЪреА рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдмрд╕ рдпрд╣ рджрд┐рдЦрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдХреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХрд╣рд╛рдБ рд╣реИрдВред рд╡рд╣рд╛рдВ, рдХрд░рд╛рдл рдЖрдкрдХреЗ рдкреНрд░реЙрдХреНрд╕реА рдХрд╛ рд╕реНрдерд╛рди рд▓реЗрдЧрд╛, рдЬрд┐рд╕реЗ рдЖрдорддреМрд░ рдкрд░ рдЗрдВрдЯреНрд░рд╛рдиреЗрдЯ рдкрд░ рдЬрд╛рдирдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред
рдХрдлрд╝рд░ рдХреЛ рдХрдИ рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдпреЗ HTTP, HTTPS (рдпрджрд┐ рд╡реЗрдм рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ), SSH, RMI, JMX рд╣реИрдВред рдпрджрд┐ рд╡реЗ рдЖрдкрдХреЗ рд╕рд╛рде рд╡реНрдпрд╕реНрдд рд╣реИрдВ, рдпрд╛ рдЖрдк рдПрдХ рд╣реА рдореЗрдЬрдмрд╛рди рдкрд░ рдХрдИ рдкреНрд░рддрд┐рдпрд╛рдВ рдЪрд▓рд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЙрдиреНрд╣реЗрдВ рднреА рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛ред рдЗрдирдореЗрдВ рд╕реЗ рд▓рдЧрднрдЧ рдкрд╛рдБрдЪ рдмрдВрджрд░рдЧрд╛рд╣ рд╣реИрдВред
Jmx рдФрд░ rmi рдЬреИрд╕реЗ рдкреЛрд░реНрдЯ - рдпрд╣рд╛рдБ: org.apache.karaf.management.cfg, ssh - org.apache.karaf.shell.cfg, http / https рдкреЛрд░реНрдЯ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЖрджрд┐ (рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ) рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА org.ops4j.pax.web.cfg, рдФрд░ value рд▓рд┐рдЦрд┐рдПред org.osgi.service.http.port = рдкреЛрд░реНрдЯ рдЖрдкрдХреЛ рдЗрд╕рдореЗрдВ рдЪрд╛рд╣рд┐рдПред
рдлрд┐рд░ рдЖрдк рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕реЗ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рд╕рдм рдХреБрдЫ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдФрджреНрдпреЛрдЧрд┐рдХ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП, рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ, рдЖрдкрдХреЛ рдмрд┐рди / рд╕реЗрдЯреЗрдирд╡, рдпрд╛ рдмрд┐рди / рд╕реЗрдЯреЗрдирд╡.рдмреИрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрд╡рд╢реНрдпрдХ рдорд╛рддреНрд░рд╛ рдореЗрдВ рд╕реНрдореГрддрд┐ рдЖрд╡рдВрдЯрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд▓реЗрдХрд┐рди рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИред
рдЖрдк Karaf рдХреЛ рдХрдВрд╕реЛрд▓, рдХрд░рдл рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдЖрдк рдЗрд╕реЗ рд╕реНрдЯрд╛рд░реНрдЯ рд╕рд░реНрд╡рд░ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рдореЗрдВ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ SSH рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдорд╛рдирдХ рдПрд╕рдПрд╕рдПрдЪ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдПрд╕рд╕реАрдкреА, рдФрд░ рдПрд╕рдПрдлрдЯреАрдкреА рдХрд╛ рд╕рдорд░реНрдерди рд╣реИред рдЖрдк рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЖрдЧреЗ рдФрд░ рдкреАрдЫреЗ рдХреЙрдкреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдХрд┐рд╕реА рднреА рдЧреНрд░рд╛рд╣рдХ рдХреЗ рд╕рд╛рде рдЬреБрдбрд╝рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореЗрд░рд╛ рдкрд╕рдВрджреАрджрд╛ рдЙрдкрдХрд░рдг рд╕реБрджреВрд░ рдиреЗрдЯрдмреЙрдХреНрд╕ рд╣реИред рд▓реЙрдЧрд┐рди рд▓реЙрдЧрд┐рди рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЪрд╛рдмрд┐рдпрд╛рдБ рджреНрд╡рд╛рд░рд╛ рдЙрдкрд▓рдмреНрдз рд╣реИред рдЬреЗрдмреАрдЯреАрдПрд╕ рдЬреАрдПрд╕рдЯреА рдореЗрдВ, рд╡рд╣ рд╕рдм рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдЗрд╕рдХрд╛ рдЕрд░реНрде рд╣реИред
рдореИрдВ рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдбреЗрдЯрд╛ / рд▓реЙрдЧ / karaf.log рдореЗрдВ рд╕реНрдерд┐рдд рд▓реЙрдЧ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рддреБрд░рдВрдд рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдХрдВрд╕реЛрд▓ рд╡рд┐рдВрдбреЛ рд╣реЛ (рдФрд░ рдЕрдиреНрдп рдлрд╛рдЗрд▓реЗрдВ рдЖрдорддреМрд░ рдкрд░ рд╡рд╣рд╛рдВ рд╣реЛрддреА рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рд╣реИ)ред рд▓реЙрдЧ рдЖрдкрдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИрдВ, рдХрдВрд╕реЛрд▓ рдореЗрдВ рдЫреЛрдЯреЗ рд╕рдВрджреЗрд╢реЛрдВ рд╕реЗ, рд╕рдм рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИред
рдореИрдВ рддреБрд░рдВрдд рд╡реЗрдм, рдФрд░ hawtio рд╡реЗрдм рдХрдВрд╕реЛрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреВрдВрдЧрд╛ред рдпреЗ рджреЛ рдЪреАрдЬреЗрдВ рдЖрдкрдХреЗ рд▓рд┐рдП рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ рдЗрд╕реЗ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдирд╛ рдФрд░ рд╡рд╣рд╛рдВ рд╕реЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдХрд╛рдлреА рд╣рдж рддрдХ рдЖрдЧреЗ рдмрдврд╝рд╛рдирд╛ рдЖрд╕рд╛рди рдмрдирд╛ рджреЗрдЧрд╛ (рдПрдХ рдмреЛрдирд╕ рдХреЗ рд░реВрдк рдореЗрдВ, рдЖрдкрдХреЛ рдЬреЛрд▓реЛрдХрд┐рдпрд╛ рдФрд░ http рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдорд┐рд▓реЗрдЧреА)ред рд╣реНрд╡рд╛рдЯрд┐рдпреЛ рдХреЛ рдЗрдВрд╕реНрдЯрд╛рд▓ рдХрд░рдирд╛ karaf рдХрдВрд╕реЛрд▓ (
рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣рд╛рдБ рд╡рд░реНрдгрд┐рдд рд╣реИ ) рд╕реЗ рджреЛ рдХрдорд╛рдВрдбреНрд╕ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЕрдлрд╕реЛрд╕, рдЖрдЬ karaf 3.x рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг рдЕрдм рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ (рдЖрдкрдХреЛ hawtio рдХреЗ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреА рддрд▓рд╛рд╢ рдХрд░рдиреА рд╣реЛрдЧреА)ред
рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░, https рддреБрд░рдВрдд рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдХреБрдЫ рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рд╣реЛрдВрдЧреЗ рдЬреИрд╕реЗ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдмрдирд╛рдирд╛, рдЖрджрд┐ред рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЬреЗрдЯреА рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрди рд╕рднреА рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреЛ рдЬреНрдпрд╛рджрд╛рддрд░ рдЙрд╕реА рддрд░рд╣ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдареАрдХ рд╣реИ, рдпрд╣ рд╢реБрд░реВ рд╣реЛ рдЧрдпрд╛, рдЖрдЧреЗ рдХреНрдпрд╛ рд╣реИ?

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЖрдкрдХреЛ рдХреНрдпрд╛ рдЙрдореНрдореАрдж рдереА? рдореИрдВрдиреЗ рдХрд╣рд╛ рдпрд╣ ssh рд╣реЛрдЧрд╛ред рдЯреИрдм рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЕрдЧрд░ рд╡рд╣ред
рдпрд╣ рдХреБрдЫ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реИред рдУрдПрд╕рдЬреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд╡реЗрджрди рдпрд╛ рддреЛ рдПрдХ рдмрдВрдбрд▓ рд╣реИ, рдпрд╛ рдХрдИ рдмрдВрдбрд▓ рд╣реИрдВред рдХрд░рдл рдХрдИ рдкреНрд░рд╛рд░реВрдкреЛрдВ рдореЗрдВ рдЖрд╡реЗрджрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
- рдПрдХ рдЬрд╛рд░ рдмрдВрдбрд▓, рдПрдХ OSGI рдкреНрд░рдХрдЯ рдХреЗ рд╕рд╛рде рдпрд╛ рдЙрд╕рдХреЗ рдмрд┐рдирд╛
- рд╕реНрдкреНрд░рд┐рдВрдЧ рдбреАрдПрдо рдпрд╛ рдмреНрд▓реВрдкреНрд░рд┐рдВрдЯ рдпреБрдХреНрдд xml
- xml рддрдерд╛рдХрдерд┐рдд рд╕реБрд╡рд┐рдзрд╛ рд╕реЗ рдпреБрдХреНрдд рд╣реИ, рдЬреЛ рдмрдВрдбрд▓реЛрдВ, рдЕрдиреНрдп рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдФрд░ рд╕рдВрд╕рд╛рдзрдиреЛрдВ (рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ) рдХрд╛ рдПрдХ рд╕рдВрдЧреНрд░рд╣ рд╣реИ
- .рдХрд░ рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рдХрдИ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ рдФрд░ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд╕рд╛рде рдПрдХ рдорд╛рд╡реЗрди рднрдВрдбрд╛рд░ рд╣реИ
- рдЬрд╛рд╡рд╛ (рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рд╢рд░реНрддреЛрдВ рдХреЗ рддрд╣рдд) рдЕрдиреБрдкреНрд░рдпреЛрдЧ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП .war
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВ:
- рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд░рдЦреЗрдВ
- рдЗрдВрд╕реНрдЯреЙрд▓ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдХрдВрд╕реЛрд▓ рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВ
- рд╕реБрд╡рд┐рдзрд╛ рд╕реЗ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рд╕реБрд╡рд┐рдзрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ: рдХрдВрд╕реЛрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
- kar: рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
рдареАрдХ рд╣реИ, рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдпрд╣ рдХрд╛рдлреА рдХреБрдЫ рд╡реИрд╕рд╛ рд╣реА рд╣реЛрддрд╛ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп JavaEE рдХрдВрдЯреЗрдирд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХреБрдЫ рд╣рдж рддрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ (рдореИрдВ рдЗрд╕реЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдХрд╣реВрдВрдЧрд╛)ред
рд╕рд░рд▓ рдЬрд╛рд░
рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рд╡рд┐рдХрд▓реНрдк рдирд┐рдпрдорд┐рдд рдЬрд╛рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдорд╛рд╡реЗрди рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд╣реИ, рддреЛ рдХрдорд╛рдВрдб рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ:
install mvn:groupId/artifactId/version
рдЙрд╕реА рд╕рдордп, рдХрд░рдл рдХреЛ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдЙрд╕рдХреЗ рд╕рд╛рдордиреЗ рдПрдХ рдирд┐рдпрдорд┐рдд рдЬрд╛рд░ рд╣реИ, рдФрд░ рдЗрд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдордХреНрдЦреА рдкрд░ рдПрдХ рдмрдВрдбрд▓ рдЖрд╡рд░рдг рдмрдирд╛рддрд╛ рд╣реИ, рддрдерд╛рдХрдерд┐рдд рд░реИрдкрд░, рдкреИрдХреЗрдЬ рдЖрдпрд╛рдд рдФрд░ рдирд┐рд░реНрдпрд╛рдд рдХреЗ рд╕рд╛рде рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреНрд░рдХрдЯрди рдкреИрджрд╛ рдХрд░рддрд╛ рд╣реИред
рд╕рд┐рд░реНрдл рдПрдХ рдЬрд╛рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рднрд╛рд╡рдирд╛ рдЖрдорддреМрд░ рдкрд░ рдЬреНрдпрд╛рджрд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдмрдВрдбрд▓ рдирд┐рд╖реНрдХреНрд░рд┐рдп рд╣реЛрдЧрд╛ - рдпрд╣ рдХреЗрд╡рд▓ рдЙрди рд╡рд░реНрдЧреЛрдВ рдХреЛ рдирд┐рд░реНрдпрд╛рдд рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЕрдиреНрдп рдмрдВрдбрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реЛрдВрдЧреЗред
рдЗрд╕ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдкрд╛рдЪреЗ рдХреЙрдордиреНрд╕ рд▓реИрдВрдЧ рдЬреИрд╕реЗ рдШрдЯрдХреЛрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
install mvn:org.apache.commons.lang3/commons-lang/3.8.1
рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ :) рдпрд╣рд╛рдВ рд╕рд╣реА рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рд╣реИрдВ:
install mvn:org.apache.commons/commons-lang3/3.8.1
рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рд╣реБрдЖ: рд╕реВрдЪреА -рдпреВ рд╣рдореЗрдВ рдмрдВрдбрд▓ рдФрд░ рдЙрдирдХреЗ рд╕реНрд░реЛрдд рджрд┐рдЦрд╛рдПрдЧрд╛:
karaf@root()> list -u START LEVEL 100 , List Threshold: 50 ID | State | Lvl | Version | Name | Update location ------------------------------------------------------------------------------------------------- 87 | Installed | 80 | 3.8.1 | Apache Commons Lang | mvn:org.apache.commons/commons-lang3/3.8.1 88 | Installed | 80 | 3.6.0 | Apache Commons Lang | mvn:org.apache.commons/commons-lang3/3.6
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдПрдХ рдШрдЯрдХ рдХреЗ рджреЛ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдХрд╛рдлреА рд╕рдВрднрд╡ рд╣реИред рдЕрджреНрдпрддрди рд╕реНрдерд╛рди - рдпрд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдВ рд╣рдореЗрдВ рдмрдВрдбрд▓ рдорд┐рд▓рд╛ рд╣реИ, рдФрд░ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдЗрд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдЬрд╛рд░ рдФрд░ рд╡рд╕рдВрдд рд╕рдВрджрд░реНрдн
рдЕрдЧрд░ рдЖрдкрдХреЗ рдЬрд╛рд░ рдХреЗ рдЕрдВрджрд░ рд╕реНрдкреНрд░рд┐рдВрдЧ рдХреЙрдиреНрдЯреЗрдХреНрд╕реНрдЯ рд╣реИ, рддреЛ рдЪреАрдЬреЗрдВ рдЕрдзрд┐рдХ рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛ рдЬрд╛рддреА рд╣реИрдВред рдореЗрдЯрд╛-рдЗрди / рд╕реНрдкреНрд░рд┐рдВрдЧ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ Karaf Deployer рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ xml рд╕рдВрджрд░реНрднреЛрдВ рдХреА рдЦреЛрдЬ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЙрдиреНрд╣реЗрдВ рдмрдирд╛рддрд╛ рд╣реИ рдпрджрд┐ рдмрдВрдбрд▓ рджреНрд╡рд╛рд░рд╛ рдЖрд╡рд╢реНрдпрдХ рд╕рднреА рдмрд╛рд╣рд░реА рдмрдВрдбрд▓ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдорд┐рд▓ рдЧрдП рд╣реИрдВред
рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╕рднреА рд╕реЗрд╡рд╛рдПрдВ рдЬреЛ рд╕рдВрджрд░реНрднреЛрдВ рдХреЗ рдЕрдВрджрд░ рдереАрдВ, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╢реБрд░реВ рд╣реЛ рдЬрд╛рдПрдВрдЧреАред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╡рд╣рд╛рдВ рдХреИрдорд▓ рд╕реНрдкреНрд░рд┐рдВрдЧ рдерд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреИрдорд▓ рдорд╛рд░реНрдЧ рднреА рд╢реБрд░реВ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рд╣рдо рдПрдХ рдЖрд░рдИрдПрд╕ рд╕реЗрд╡рд╛, рдпрд╛ рдЯреАрд╕реАрдкреА рдкреЛрд░реНрдЯ рдкрд░ рд╕реБрдирдиреЗ рд╡рд╛рд▓реА рд╕реЗрд╡рд╛ рдХрд╣рддреЗ рд╣реИрдВ, рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдмреЗрд╢рдХ, рдПрдХ рдкреЛрд░реНрдЯ рдкрд░ рд╕реБрдирдиреЗ рд╡рд╛рд▓реА рдХрдИ рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рд╕реЗ рдЙрд╕ рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рд╣реЛрдЧрд╛ред
рдмрд╕ рд╕реНрдкреНрд░рд┐рдВрдЧ рдПрдХреНрд╕рдПрдордПрд▓ рд╕рдВрджрд░реНрдн
рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реНрдкреНрд░рд┐рдВрдЧ рдХреЙрдиреНрдЯреЗрдХреНрд╕реНрдЯ рдХреЗ рдЕрдВрджрд░ рдЬреЗрдбреАрдмреАрд╕реА рдбреЗрдЯрд╛рд╕реН рдХреА рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ рд╣реИрдВ, рддреЛ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ рд╕реЗ рдХрд░рд╛рдл рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╛рдиреА рдПрдХ xml рдлрд╝рд╛рдЗрд▓ рд▓реЗрдВ рдЬрд┐рд╕рдореЗрдВ рдХреЗрд╡рд▓ <b> рдпрд╛ рдШрдЯрдХреЛрдВ рдХреЗ рдХрд┐рд╕реА рдЕрдиреНрдп рд╕реЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рд╣реИ, рдЖрдк рдЗрд╕реЗ рддреИрдирд╛рддреА рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред рдорд╛рдирдХ рддрд░реАрдХреЗ рд╕реЗ рд╕рдВрджрд░реНрдн рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдПрдХрдорд╛рддреНрд░ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдмрдирд╛рдП рдЧрдП рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдЕрдиреНрдп рдмрдВрдбрд▓реЛрдВ рдХреЛ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрдВрдЧреЗред рдЙрдиреНрд╣реЗрдВ OSGI рдХреЛ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ - рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рджред
рд╕реНрдкреНрд░рд┐рдВрдЧ рдбреА.рдПрдо.
рд╕реНрдкреНрд░рд┐рдВрдЧ рдбреАрдПрдо (рдУрдПрд╕рдЬреАрдЖрдИ-рд╕рдХреНрд╖рдо рд╕рдВрд╕реНрдХрд░рдг) рдФрд░ рдХреНрд▓рд╛рд╕рд┐рдХ рд╕реНрдкреНрд░рд┐рдВрдЧ рдХреЗ рдмреАрдЪ рдХреНрдпрд╛ рдЕрдВрддрд░ рд╣реИ? рддреЛ рдХреНрд▓рд╛рд╕рд┐рдХ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╕рдВрджрд░реНрдн рдореЗрдВ рд╕рднреА рд╕реЗрдо рд╕рдВрджрд░реНрдн рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЪрд░рдг рдореЗрдВ рдмрдирд╛рдИ рдЧрдИ рд╣реИрдВред рдирдП рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗ рд╕рдХрддреЗ, рдкреБрд░рд╛рдиреЗ рдХрд╣реАрдВ рдирд╣реАрдВ рдЬрд╛рдПрдВрдЧреЗред рдУрдПрд╕рдЬреАрдЖрдИ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдирдП рдмрдВрдбрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдкреБрд░рд╛рдиреЗ рдмрдВрдбрд▓ рд╣рдЯрд╛ рджрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдкрд░реНрдпрд╛рд╡рд░рдг рдЕрдзрд┐рдХ рдЧрддрд┐рд╢реАрд▓ рд╣реЛрддрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдЖрдкрдХреЛ рдХрд┐рд╕реА рддрд░рд╣ рдЬрд╡рд╛рдм рджреЗрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред
рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╡рд┐рдзрд┐ рдХреЛ рд╕реЗрд╡рд╛рдПрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдПрдХ рд╕реЗрд╡рд╛ рдЖрдорддреМрд░ рдкрд░ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╣реЛрддреА рд╣реИ, рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЗ рд╕рд╛рде, рдЬреЛ рдХреБрдЫ рдмрдВрдбрд▓ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рдХрд╛рд╢рд┐рдд рд╣реЛрддреА рд╣реИред рдПрдХ рд╕реЗрд╡рд╛ рдореЗрдВ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рд╣реИ рдЬреЛ рдЗрд╕реЗ рдЦреЛрдЬрдиреЗ рдФрд░ рдХрд┐рд╕реА рдЕрдиреНрдп рд╕реЗрд╡рд╛ рд╕реЗ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬреЛ рдПрдХ рд╕рдорд╛рди рдЗрдВрдЯрд░рдлрд╝реЗрд╕ (рдЬрд╛рд╣рд┐рд░ рд╣реИ, рджреВрд╕рд░реЗ рдбреЗрдЯрд╛рд╕реЛрд░реНрд╕ рд╕реЗ) рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреБрдВрдЬреА-рдореВрд▓реНрдп рдЧреБрдгреЛрдВ рдХрд╛ рдПрдХ рд╕рд░рд▓ рд╕реЗрдЯ рд╣реИред
рдЪреВрдВрдХрд┐ рд╕реЗрд╡рд╛рдПрдБ рдкреНрд░рдХрдЯ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ рдФрд░ рдЧрд╛рдпрдм рд╣реЛ рд╕рдХрддреА рд╣реИрдВ, рдЬрд┐рдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рд╡реЗ рдпрд╛ рддреЛ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░ рд╕реЗрд╡рд╛рдУрдВ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдЕрдкрдиреЗ рд╕реНрд╡рд░реВрдк рдпрд╛ рдЧрд╛рдпрдм рд╣реЛрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдШрдЯрдирд╛рдУрдВ рдХреЛ рд╕реБрди рд╕рдХрддреЗ рд╣реИрдВред рдПрдХреНрд╕рдПрдордПрд▓ рдореЗрдВ рд╕реНрдкреНрд░рд┐рдВрдЧ рдбреАрдПрдо рд╕реНрддрд░ рдкрд░, рдЗрд╕реЗ рджреЛ рддрддреНрд╡реЛрдВ, рд╕реЗрд╡рд╛ рдФрд░ рд╕рдВрджрд░реНрдн рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдореВрд▓ рдЙрджреНрджреЗрд╢реНрдп рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИ: рдореМрдЬреВрджрд╛ рдмреАрди рдХреЛ рд╕реЗрд╡рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрджрд░реНрдн рд╕реЗ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░реЗрдВ, рдФрд░ рдЗрд╕реЗ рд╡рд░реНрддрдорд╛рди рд╡рд╕рдВрдд рд╕рдВрджрд░реНрдн рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдХреЗ рдмрд╛рд╣рд░реА рд╕реЗрд╡рд╛ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрдВред
рддрджрдиреБрд╕рд╛рд░, рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдмрдВрдбрд▓ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдкрд░, рдХрдВрдЯреЗрдирд░ рдХреЛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдмрд╛рд╣рд░реА рд╕реЗрд╡рд╛рдПрдВ рдорд┐рд▓реЗрдВрдЧреА, рдФрд░ рдЗрд╕рдХреЗ рдЕрдВрджрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдмрдВрдбрд▓ рдХреЛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░реЗрдВрдЧреЗ, рдЬрд┐рд╕рд╕реЗ рдЙрдиреНрд╣реЗрдВ рдмрд╛рд╣рд░ рд╕реЗ рд╕реБрд▓рдн рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХреЗрдЧрд╛ред рд╕реЗрд╡рд╛ рд▓рд┐рдВрдХ рд╣рд▓ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рд╣реА рдПрдХ рдмрдВрдбрд▓ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рдм рдХреБрдЫ рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдмрдВрдбрд▓ рд╕рдорд╛рди рд╕реЗрд╡рд╛рдУрдВ рдХреА рд╕реВрдЪреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рд╕реВрдЪреА рдореЗрдВ рддреБрд░рдВрдд рд╕рджрд╕реНрдпрддрд╛ рд▓реЗ рд╕рдХрддрд╛ рд╣реИред рдпрд╛рдиреА рдПрдХ рд╕реЗрд╡рд╛, рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдХрд╛рд░реНрдбрд┐рдиреИрд▓рд┐рдЯреА рдЬреИрд╕реА рдПрдХ рд╕рдВрдкрддреНрддрд┐ рд╣реЛрддреА рд╣реИ, рдЬреЛ рдорд╛рди 0..N рд▓реЗрддреА рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╕рджрд╕реНрдпрддрд╛, рдЬрд╣рд╛рдВ 0..1 рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╕реЗрд╡рд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдмрдВрдбрд▓ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдРрд╕реА рдХреЛрдИ рд╕реЗрд╡рд╛ рди рд╣реЛ (рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХ рдХреЗ рдмрдЬрд╛рдп, рдпрд╣ рдПрдХ рд╕реНрдЯрдм рдорд┐рд▓реЗрдЧрд╛)ред
рдореИрдВ рдзреНрдпрд╛рди рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдПрдХ рд╕реЗрд╡рд╛ рдХреЗрд╡рд▓ рдХреЛрдИ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╣реИ (рдпрд╛ рдЖрдк рдХреЗрд╡рд▓ рдХрдХреНрд╖рд╛рдПрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ), рдЗрд╕рд▓рд┐рдП рдЖрдк рд╕реЗрд╡рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде java.util.Map рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЕрдиреНрдп рдмрд╛рддреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕реЗрд╡рд╛ рдЖрдкрдХреЛ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ, рдФрд░ рд╕рдВрджрд░реНрдн рдЖрдкрдХреЛ рдЗрд╕ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рджреНрд╡рд╛рд░рд╛ рд╕реЗрд╡рд╛ рдХреА рдЦреЛрдЬ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рдЦрд╛рдХрд╛
рдмреНрд▓реВрдкреНрд░рд┐рдВрдЯ рдирдпрд╛ рд╕реНрдкреНрд░рд┐рдВрдЧ рдбреАрдПрдо рдЕрд╡рддрд╛рд░ рд╣реИ, рдЬреЛ рдереЛрдбрд╝рд╛ рд╕рд░рд▓ рд╣реИред рдЕрд░реНрдерд╛рддреН, рдпрджрд┐ рд╡рд╕рдВрдд рдореЗрдВ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХрд╕реНрдЯрдо XML рддрддреНрд╡ рд╣реИрдВ, рддреЛ рд╡реЗ рдпрд╣рд╛рдБ рдирд╣реАрдВ рд╣реИрдВ, рдЕрдирд╛рд╡рд╢реНрдпрдХ рдХреЗ рд░реВрдк рдореЗрдВред рдХрднреА-рдХрднреА рдпрд╣ рдЕрднреА рднреА рдЕрд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ - рдЕрдХреНрд╕рд░ред рдпрджрд┐ рдЖрдк рд╕реНрдкреНрд░рд┐рдВрдЧ рд╕реЗ рдХрд┐рд╕реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдк рдмреНрд▓реВрдкреНрд░рд┐рдВрдЯ рд╕реЗ рддреБрд░рдВрдд рд╢реБрд░реБрдЖрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдпрд╣рд╛рдБ рд╕рд╛рд░ рдПрдХ рд╣реА рд╣реИ - рдпрд╣ рдПрдХреНрд╕рдПрдордПрд▓ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдЙрди рдШрдЯрдХреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬрд┐рдирд╕реЗ рдмрдВрдбрд▓ рд╕рдВрджрд░реНрдн рдЗрдХрдЯреНрдард╛ рд╣реЛрддрд╛ рд╣реИред рдЬреЛ рд▓реЛрдЧ рд╡рд╕рдВрдд рдХреЛ рдЬрд╛рдирддреЗ рд╣реИрдВ, рдЙрдирдХреЗ рд▓рд┐рдП рдЕрдкрд░рд┐рдЪрд┐рдд рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИред
рдПрдХ рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдФрд░ рдЗрд╕реЗ рдПрдХ рд╕реЗрд╡рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:
<?xml version="1.0" encoding="UTF-8"?> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"> <bean id="dataSource" class="oracle.jdbc.pool.OracleDataSource"> <property name="URL" value="URL"/> <property name="user" value="USER"/> <property name="password" value="PASSWORD"/> </bean> <service interface="javax.sql.DataSource" ref="dataSource" id="ds"> <service-properties> <entry key="osgi.jndi.service.name" value="jdbc/ds"/> </service-properties> </service> </blueprint>
рдЦреИрд░, рд╣рдордиреЗ рдЗрд╕ рдлрд╛рдЗрд▓ рдХреЛ рддреИрдирд╛рддреА рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рддреИрдирд╛рдд рдХрд┐рдпрд╛, рдФрд░ рд╕реВрдЪреА рдХрдорд╛рдВрдб рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рджреЗрдЦрд╛ред рдЙрдиреНрд╣реЛрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ рдмрдВрдбрд▓ рд╢реБрд░реВ рдирд╣реАрдВ рд╣реБрдЖ - Indtalled рд╕реНрдерд┐рддрд┐ рдореЗрдВред рд╣рдо рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рд╣рдореЗрдВ рдПрдХ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдорд┐рд▓рддрд╛ рд╣реИред
рдЕрдм рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдмрдВрдбрд▓реЛрдВ рдХреА рд╕реВрдЪреА рдореЗрдВ рд╡рд┐рдлрд▓ред рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ? рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдЙрд╕реЗ рднреА рдирд┐рд░реНрднрд░рддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдУрд░реЗрдХрд▓ рдЬреЗрдбрдбреАрдмреАрд╕реА рд╡рд░реНрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдЬрд╛рд░, рдпрд╛ рдЕрдзрд┐рдХ рд╕рдЯреАрдХ рд░реВрдк рд╕реЗ, oracle.jdbc.pool рдкреИрдХреЗрдЬред
рд╣рдо рднрдВрдбрд╛рд░ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рд░ рдкрд╛рддреЗ рд╣реИрдВ, рдпрд╛ рдУрд░реЗрдХрд▓ рд╕рд╛рдЗрдЯ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рд╡рд░реНрдгрд┐рдд рд╣реИред рд╣рдорд╛рд░рд╛ рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рд╢реБрд░реВ рд╣реЛ рдЧрдпрд╛ рд╣реИред
рдпрд╣ рд╕рдм рдХреИрд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ? рд╕реЗрд╡рд╛ рд▓рд┐рдВрдХ рдХреЛ рдмреНрд▓реВрдкреНрд░рд┐рдВрдЯ рд╕рдВрджрд░реНрдн рдореЗрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ (рдХрд╣реАрдВ, рдПрдХ рдмрдВрдбрд▓ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ):
<reference id="dataSource" interface="javax.sql.DataSource"/>
рдлрд┐рд░, рдпрд╣ рдмреАрди рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, рдЕрдиреНрдп рдмреАрдиреНрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдмрди рдЬрд╛рддреА рд╣реИ (рдКрдВрдЯ-рд╡рд░реНрдЧ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ):
<bean id="sql" class="org.apache.camel.component.sql.SqlComponent"> <property name="dataSource" ref="dataSource"/> </bean>
рдЬрд╛рд░ рдФрд░ рдПрдХреНрдЯрд┐рд╡реЗрдЯрд░
рдмрдВрдбрд▓реЛрдВ рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдПрдХреНрдЯреАрд╡рд┐рдЯреА рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╡рд░реНрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПред рдпрд╣ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЬреАрд╡рди-рдЪрдХреНрд░ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╣реИ рдЬрд┐рд╕рдореЗрдВ
рд╕рдВрджрд░реНрдн рд╕реЗ рдЧреБрдЬрд░рдиреЗ рд╡рд╛рд▓реЗ рддрд░реАрдХреЛрдВ рдХреЛ рд╢реБрд░реВ рдХрд░рдирд╛ рдФрд░ рд░реЛрдХрдирд╛
рд╣реИ ред рдЙрдирдХреЗ рдЕрдВрджрд░, рдмрдВрдбрд▓ рдЖрдорддреМрд░ рдкрд░ рдЕрдкрдиреЗ рдзрд╛рдЧреЗ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИ, рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХреЛ рд╕реБрдирдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИ, рдУрдПрд╕рдЬреАрдЖрдИ рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрд╛рд╣рд░реА рд╕реЗрд╡рд╛рдУрдВ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрддрд╛ рд╣реИ, рдФрд░ рдЗрд╕реА рддрд░рд╣ред рдпрд╣ рд╢рд╛рдпрдж рд╕рдмрд╕реЗ рдЬрдЯрд┐рд▓, рд╕рдмрд╕реЗ рдмреБрдирд┐рдпрд╛рджреА рдФрд░ рд╕рдмрд╕реЗ рд▓рдЪреАрд▓рд╛ рддрд░реАрдХрд╛ рд╣реИред рддреАрди рд╕рд╛рд▓ рддрдХ рдореБрдЭреЗ рдЗрд╕рдХреА рдХрднреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рдкрдбрд╝реАред
рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди
рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдХрд╛ рдРрд╕рд╛ рд╡рд┐рдиреНрдпрд╛рд╕, рдЬреИрд╕рд╛ рдХрд┐ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдХрдо рд▓реЛрдЧреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд▓реЙрдЧрд┐рди, рдкрд╛рд╕рд╡рд░реНрдб, рдФрд░ рдЕрдзрд┐рдХ, рд╕рдм рдХреБрдЫ XML рдХреЗ рдЕрдВрджрд░ рд╣рд╛рд░реНрдбрдХреЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред
<property name="url" value="${oracle.ds.url}"/> <property name="user" value="${oracle.ds.user}"/> <property name="password" value="${oracle.ds.password}"/>
рд╕рдорд╛рдзрд╛рди рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИ, рдФрд░ рдХреНрд▓рд╛рд╕рд┐рдХ рд╕реНрдкреНрд░рд┐рдВрдЧ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ рд╕рдорд╛рди рд╣реИ: рд╕рдВрджрд░реНрдн рдЬреАрд╡рди рдЪрдХреНрд░ рдореЗрдВ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдмрд┐рдВрджреБ рдкрд░, рд╡рд┐рднрд┐рдиреНрди рд╕реНрд░реЛрддреЛрдВ рд╕реЗ рд╕рдВрдкрддреНрддрд┐ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЗрд╕ рдкрд░ рд╣рдо рдкрд╣рд▓рд╛ рднрд╛рдЧ рд╕рдорд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗред рдпрджрд┐ рдЗрд╕ рд╡рд┐рд╖рдп рдореЗрдВ рд░реБрдЪрд┐ рд╣реИ, рддреЛ рдЬрд╛рд░реА рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рдо рдЗрд╕ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдкрд░ рдмрдВрдбрд▓реЛрдВ рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ, рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ, рдореЙрдирд┐рдЯрд░ рдХрд░рдиреЗ рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рд╕рдордЭреЗрдВрдЧреЗред