shareManager = $shareManager;
}
/**
* @param Controller $controller
* @param string $methodName
* @throws S2SException
*/
public function beforeController($controller, $methodName) {
if (!($controller instanceof ShareInfoController)) {
return;
}
if (!$this->shareManager->outgoingServer2ServerSharesAllowed()) {
throw new S2SException();
}
}
/**
* @param Controller $controller
* @param string $methodName
* @param \Exception $exception
* @throws \Exception
* @return Response
*/
public function afterException($controller, $methodName, \Exception $exception) {
if (!($controller instanceof ShareInfoController)) {
throw $exception;
}
if ($exception instanceof S2SException) {
return new JSONResponse([], Http::STATUS_NOT_FOUND);
}
throw $exception;
}
/**
* @param Controller $controller
* @param string $methodName
* @param Response $response
* @return Response
*/
public function afterController($controller, $methodName, Response $response) {
if (!($controller instanceof ShareInfoController)) {
return $response;
}
if (!($response instanceof JSONResponse)) {
return $response;
}
$data = $response->getData();
$status = 'error';
if ($response->getStatus() === Http::STATUS_OK) {
$status = 'success';
}
$response->setData([
'data' => $data,
'status' => $status,
]);
return $response;
}
}
deprecation-warning-20241105
changelog-7.7.47-changes
changelog-8.27.1
changelog-8.27.2
changelog-8.27.3
changelog-8.27.4
changelog-8.27.6
changelog-8.28.1
chore-mention-8.14.4
chore-readme-8-14-4
context-menu
datefield-set-invalid-value
declarative
dependabot/maven/org.eclipse.jetty-jetty-server-10.0.14
dependabot/maven/org.eclipse.jetty-jetty-webapp-9.4.44.v20210927
dependabot/maven/org.eclipse.jgit-org.eclipse.jgit-3.5.3.201412180710-r
dependabot/maven/org.eclipse.jgit-org.eclipse.jgit-7.2.1.202505142326-r
dependabot/maven/org.hsqldb-hsqldb-2.7.1
documentation
documentation-7.6
downgrade-snapshot-version-20241105
exclude-element-screenshot
feature/atmosphere-pure-javascript
feature/bootstrap-annotation
feature/combobox-communication
feature/dalvik
feature/databinding
feature/dnd
feature/elements
feature/eventbus
feature/karaf-feature-file
feature/nullrepresentation
feature/standard-gwt
feature/standard-sass
feature/vaadin8
feature/vaadin8-book
feature/vaadin8-book-vol2
feature/vaadin8-sass-valo-only
fileToFilesReplacement
fix11576
fix_event_router_prototype
grid
grid_dnd_autoscroller
grid_dragger
issue/8307_select_using_collection
master
mobile_drag_image_offset
pr/11306
remote-run/flow-atmosphere-test
snapshot/7.5
snapshot/7.6
tmattsso-patch-1
update-minor-deps
vaadin-icons-3.0.1
wip-date-time-datatype
wip-java-10-compat
blob: 687029adaafa362a69334dc11e4cc91f21feb5c3 (
plain )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
[[getting-started]]
== Creating a Vaadin Application
This chapter gives practical instructions for creating a Vaadin application project and deploying it to a server to run it. We also consider topics such as debugging.
The instructions are given separately for the Eclipse IDE, NetBeans, and IntelliJ IDEA.
include::getting-started-overview.adoc[leveloffset=+2]
include::getting-started-libraries.asciidoc[leveloffset=+2]
include::getting-started-archetypes.asciidoc[leveloffset=+2]
include::getting-started-first-project.asciidoc[leveloffset=+2]
include::getting-started-netbeans.asciidoc[leveloffset=+2]
include::getting-started-idea.asciidoc[leveloffset=+2]
include::getting-started-maven.asciidoc[leveloffset=+2]
include::getting-started-package.asciidoc[leveloffset=+2]
include::getting-started-scala.asciidoc[leveloffset=+2]