рдкрд░рд┐рдЪрдп
рдореИрдВ рдЗрди рджреЛ рд░реВрдкрд░реЗрдЦрд╛рдУрдВ рдХреЗ рдЕрд╕рд╛рдорд╛рдиреНрдп рдПрдХреАрдХрд░рдг рдХреЗ рдЕрдкрдиреЗ рдЕрдиреБрднрд╡ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рд╡рд╛рд▓реЛрдВ рдкрд░ "рдореБрдЭреЗ рдЬреЗрдПрд╕рдПрдл рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ" рдХреЛ рдЫреВрдирд╛ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛, рдореИрдВ рдПрдХ рдЖрд░рдХреНрд╖рдг рджреВрдВрдЧрд╛ рдХрд┐ рдореИрдВ рдЗрд╕ рддрдХрдиреАрдХ рдХрд╛ рд╕рдорд░реНрдердХ рдирд╣реАрдВ рд╣реВрдВред
рдПрдХ рд▓рдВрдмреЗ рд╕рдордп рдХреЗ рд▓рд┐рдП, рд╕реНрдкреНрд░рд┐рдВрдЧ + рд╣рд╛рдЗрдмрд░рдиреЗрдЯ + рдкреАрдПрд▓ / рдПрд╕рдХреНрдпреВрдПрд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ рдУрд░реЗрдХрд▓ рдкреИрдХреЗрдЬреЛрдВ рдХреА рдПрдХ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдПрдХ рдЪрд┐рдбрд╝рд┐рдпрд╛рдШрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд╕реНрд╡-рдирд┐рд░реНрдорд┐рдд рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдПрдЪрдЯреАрдПрдордПрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕реНрдерд╛рдиреЛрдВ рдореЗрдВ рдпреВрдЬрд░ рдЗрдВрдЯрд░рдлреЗрд╕ 4 рд╡реЗрдВ рдФрд░ 2 рд╡реЗрдВ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдПрдХреНрд╕рдЯреАрдЬреЗрдПрд╕ рдкрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдХреЙрд░реНрдкреЛрд░реЗрдЯ рдлреНрд░реИрдВрдХрдирд╕реНрдЯрд╛рдЗрдиред рдмрд▓ рдХреА рдмрдбрд╝реА рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдиреЗ рдореБрдЭреЗ рдХреБрдЫ рдЗрдВрдЯрд░рдлреЗрд╕ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП JSF рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛, рдЗрд╕рд▓рд┐рдП JSF рдХреЛ рдореМрдЬреВрджрд╛ рд╕реНрдкреНрд░рд┐рдВрдЧ MVC- рдЖрдзрд╛рд░рд┐рдд рдЕрдиреБрд░реЛрдз рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдПрдХреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВрдиреЗ рдкреНрд░рд╛рдЗрдордлреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдмрд╛рдХреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд╣реА рддрд░реАрдХреЗ рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВред
рд╕реНрдкрд╖реНрдЯ рдмрд╛рддреЗрдВ
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, web.xml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рд╕рд░реНрд╡рд▓реЗрдЯ рдмрдирд╛рдПрдВред
<servlet> <servlet-name>JSF</servlet-name> <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>JSF</servlet-name> <url-pattern>*.xhtml</url-pattern> </servlet-mapping>
рдФрд░ рдлреЗрд╕-config.xml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣рдо рд╕реНрдкреНрд░рд┐рдВрдЧ рд╕рдкреЛрд░реНрдЯ рдЬреЛрдбрд╝реЗрдВрдЧреЗ рддрд╛рдХрд┐ рдЖрдк xhtml рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдореЗрдВ рд╕реНрдкреНрд░рд┐рдВрдЧ рдПрдиреЛрдЯреЗрд╢рди рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдИ рдЧрдИ рдмреАрдиреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХреЗрдВред
<application> <el-resolver>org.springframework.web.jsf.el.SpringBeanFacesELResolver</el-resolver> </application>
рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд▓рдкреЗрдЯреЗрдВ
рдЕрдм рддрдХ, рд╕рдм рдХреБрдЫ рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИ рдФрд░ рд▓рдЧрднрдЧ рд╣рд░ рдЬрдЧрд╣ рд╡рд░реНрдгрд┐рдд рд╣реИред рдЕрдм рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
- JSF рдХреЛ рд╡рд╕рдВрдд рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдиреБрд░реЛрдз рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ рдФрд░ рдкреЛрд╕реНрдЯ рдХрд░реЗрдВред
- рд▓реЗрди-рджреЗрди рдХрд╛ рд╕рдорд░реНрдерди рдЬреЛрдбрд╝реЗрдВ (рд╣рдо рдЖрд▓рд╕реА рдХрд▓реЗрдХреНрд╢рди рдХреЗ рд╕рд╛рде рд╣рд╛рдЗрдмрд░рдиреЗрдЯ рдХреЗ рдЕрдВрджрд░ рд╣реИрдВ)
- рдПрдХ рдЬреАрд╡рди рднрд░ рдХреЗ рд╕рд╛рде рд╕реЗрдо рдмрдирд╛рдПрдБ
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрдХреНрд╕рдПрдЪрдЯреАрдПрдордПрд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рд╕реЗ рд╡рдВрдЪрд┐рдд рдХрд░реЗрдВ
рдкрд╣рд▓реЗ рджреЛ рдмрд┐рдВрджреБрдУрдВ рдХреЛ рдПрдХ рд╕рд╛рде рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдореЗрдВ, рд╕рднреА URL рдЬрд┐рди рдкрд░ JSF рдЗрдВрдЯрд░рдлреЗрд╕ рдмрдирд╛рдП рдЬрд╛рдПрдВрдЧреЗ рд╡реЗ рдлреЙрд░реНрдо "/ app / * / js / *"
@Controller("") @RequestMapping("/app/*/jsf") public class JSFTestController { @RequestMapping(value = "/*", method = {RequestMethod.GET}) @Transactional(rollbackFor = Exception.class) public void redirectToJSF(HttpServletRequest request, HttpServletResponse response) throws Exception { String uri = request.getRequestURI();
GetXHTMLPath рд╡рд┐рдзрд┐ xHTML рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдкрде рдХреЛ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд░рддреА рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,
/resources/jsf/accounts/find_create.xhtml рдЙрд╕ рдлрд╝рд╛рдЗрд▓ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ
[рдпреБрджреНрдз рдлрд╝рд╛рдЗрд▓] \ рд╕рдВрд╕рд╛рдзрдиреЛрдВ \ jsn \ account \ find_create.xhtml рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИредрдпрд╣ рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рдПрдХреНрд╕рдПрдЪрдЯреАрдПрдордПрд▓ рдкреЗрдЬ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдкреНрд░рдзрд╛рди рдордВрддреНрд░реА POST рдЕрдиреБрд░реЛрдзреЛрдВ рдореЗрдВ рд╕рдореГрджреНрдз рд╣реИрдВ, рдФрд░ рд╡реЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЧрд▓рдд рдкрддреЗ рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВред рдлреЙрд░реНрдо рд░реЗрдВрдбрд░рд░ рдЕрдиреБрд░реЛрдз рдХреЗ POST рдкрде (рдпрд╛рдиреА, рдлреЙрд░реНрдо рдХреА рдПрдХреНрд╢рди рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЗ рдореВрд▓реНрдп) рдХреЗ рдЧрдарди рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдПрдХ рд╕реНрдерд┐рд░ рдлрд╝рдВрдХреНрд╢рди
getActionStr рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдЗрд╕реЗ рд╕реНрдерд┐рд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдЖрдкрдХреЛ рдЗрд╕реЗ рдХреЙрд▓ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдмреНрд▓реЙрдХ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
public class ActCorrectFormRenderer extends FormRenderer { private static final com.sun.faces.renderkit.Attribute[] ATTRIBUTES = AttributeManager.getAttributes(AttributeManager.Key.FORMFORM); private boolean writeStateAtEnd; public ActCorrectFormRenderer() { WebConfiguration webConfig = WebConfiguration.getInstance(); writeStateAtEnd = webConfig.isOptionEnabled(WebConfiguration.BooleanWebContextInitParameter.WriteStateAtFormEnd); } @Override public void encodeBegin(FacesContext context, UIComponent component) throws IOException { rendererParamsNotNull(context, component); if (!shouldEncode(component)) { return; } ResponseWriter writer = context.getResponseWriter(); assert (writer != null); String clientId = component.getClientId(context);
рдпрд╣ рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реНрдерд┐рд░ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди рдЗрд╕ рддрд░рд╣ рд╕реЗ рдлреЙрд░реНрдо рдХреА рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреЛ рдмрджрд▓рдирд╛ рд╕рдВрднрд╡ рдерд╛ рдФрд░ рдкреЛрд╕реНрдЯ рдЕрдиреБрд░реЛрдз рдЙрд╕реА рдкрддреЗ рдкрд░ рдЬрд╛рдПрдВрдЧреЗ, рдЬрд╣рд╛рдВ рдкреЗрдЬ рдХреЗ рд▓рд┐рдП рджреГрд╢реНрдп рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдЕрдиреБрд░реЛрдз рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдЖрдкрдХреЗ рд░реЗрдВрдбрд░ рдХреЛ рдлреЗрд╕-рдХреЙрдиреНрдлрд┐рдЧрд░ рдлрд╛рдЗрд▓ рдореЗрдВ рд░рдЬрд┐рд╕реНрдЯрд░ рдХрд░рдирд╛ рдмрд╛рдХреА рд╣реИ:
<render-kit> ... <renderer> <component-family>org.primefaces.component</component-family> <renderer-type>org.primefaces.component.MenuRenderer</renderer-type> <renderer-class>com.XXXXX.ActCorrectMenuRenderer</renderer-class> </renderer> ... </render-kit>
GET рдФрд░ POST рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддреЗ рд╕рдордп рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдереЛрдбрд╝рд╛ рдЕрд▓рдЧ рдЪреЗрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╡рд┐рдзрд┐рдпрд╛рдБ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╣реЛрддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдПрдХ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, redirectToJSF рдкрджреНрдзрддрд┐ рдХреЛ @RequestMapping (рдорд╛рди = "/ *", рд╡рд┐рдзрд┐ {{RequestMethod.GET, RequestMethod.POST}) рдПрдиреЛрдЯреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
"рджреГрд╢реНрдп" рдЧреБрдВрдЬрд╛рдЗрд╢
рдЬреЗрдПрд╕рдПрдл рдХреЛ рд╕реЗрдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬреЛ рджреГрд╢реНрдп рдХреЗ рднреАрддрд░ рдореМрдЬреВрдж рд╣реЛрддреА рд╣реИ, рдЕрд░реНрдерд╛рдд рдкреНрд░рддреНрдпреЗрдХ GET рдЕрдиреБрд░реЛрдз рдкрд░ рдкреИрджрд╛ рд╣реБрдП рдФрд░ рдЗрд╕ GET рдЕрдиреБрд░реЛрдз рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди рдкреГрд╖реНрда рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ POST рдЕрдиреБрд░реЛрдзреЛрдВ рдкрд░ рд░рд╣рддреЗ рд╣реИрдВред рд╣рдо рдкрд╣рд┐рдП рдХреЛ рдлрд┐рд░ рд╕реЗ рдирд╣реАрдВ рд▓рдЧрд╛рдПрдВрдЧреЗ, рд╣рдо рдпрд╣рд╛рдВ рдХрдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдЙрдзрд╛рд░ рд▓реЗрдВрдЧреЗ:
forum.springsource.org/showthread.php?80595-View-scope-with-Springрд╕реБрд░рдХреНрд╖рд╛
рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдПрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕реЗ рдПрдХ рд╕рд╛рде рдХрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рддрд╣рдд рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛, рд╕рддреНрд░ GUID рдХреЛ URL рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдПрдХреНрд╕рдПрдЪрдЯреАрдПрдордПрд▓ рдлрд╝рд╛рдЗрд▓ рддрдХ рд╕реАрдзреЗ рдкрд╣реБрдВрдЪ рдХреЛ рдЕрдзрд┐рдХреГрдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рдЬреЗрдПрд╕рдПрдл рдХреЗ рдмрд┐рдирд╛ рд▓реЙрдЧрд┐рди рдлреЙрд░реНрдо рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛), рдФрд░ рдЗрд╕реЗ рдмрд╛рд╣рд░ рдЦреАрдВрдЪреЗрдВ (рдпрд╛ рд╕реАрдзреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдЕрдиреБрд░реЛрдз рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЗрдПрд╕рдПрдл рдХреЛ рдордЬрдмреВрд░ рдХрд░реЗрдВ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдлреЙрд░реНрдо рдХреЗ рд╕рддреНрд░ GUID рдХреЗ рд╕рд╛рде рдПрдХ рдЕрдиреБрд░реЛрдз:
рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ: 8443 / <рдЖрд╡реЗрджрди рдирд╛рдо> /app/ea10efcb-4a2e-4eeb-aa71-24310882f7ad/jsf/accounts/find_create.xhtml
рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдХреЛрдИ рдлрд╝рд╛рдЗрд▓ [xxx.war] /app/ea10efcb-4a2e-4eeb-aa71-24310882f7ad/jsf/accounts/find_create.xhtml
рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдлрд┐рд▓реНрдЯрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдП рдЧрдП рдереЗ:
- "-javax.faces.resource/**" - рдПрдХ рдЦрд╛рд▓реА рдлрд╝рд┐рд▓реНрдЯрд░ (рд╣рдореЗрдВ рдЦреЗрдж рдирд╣реАрдВ рд╣реИ, рдЬреЛ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЙрд╕реЗ рд▓реЗрдВ)
- / рдереАрдореНрд╕ / ** - рдЦрд╛рд▓реА рдлрд┐рд▓реНрдЯрд░
- / ** / рд╕рдВрд╕рд╛рдзрди / jsf / ** - рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЬрд╛рдВрдЪ рдХреЗ рд╕рд╛рде
рдирд┐рд╖реНрдХрд░реНрд╖
рдЦреИрд░, рдпрд╣рд╛рдВ рд╣рдордиреЗ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рджрд░реНрдж рд░рд╣рд┐рдд (рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд▓рд┐рдП, рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд▓рд┐рдП, рдХрдИ рдмрд┐рдВрджреБ рдмреЗрд╣рдж рджрд░реНрджрдирд╛рдХ рдереЗ) рдЬреЗрдПрд╕рдПрдл рдХреЛ рдПрдХ рдЬрдЯрд┐рд▓ рдЖрд╡реЗрджрди рдореЗрдВ рдЬреЛрдбрд╝рдХрд░ рдореБрдЦреНрдп рдмрд┐рдВрджреБрдУрдВ рдХреА рдЬрд╛рдВрдЪ рдХреА рд╣реИред рджреГрд╢реНрдпреЛрдВ рдХреЗ рдкреАрдЫреЗ POST рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рджреМрд░рд╛рди рдЕрдкрд╡рд╛рдж рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд╕рд╡рд╛рд▓ рдереЗ, рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдШрдЯрдХ рдХреЙрд▓ рдХреЗ рдЦрд┐рд▓рд╛рдл рд▓рдбрд╝рд╛рдИ, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдЕрд▓рдЧ рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╖рдп рд╣реИред