diff --git a/modules/ROOT/pages/extending-neo4j/index.adoc b/modules/ROOT/pages/extending-neo4j/index.adoc index eb2c894..4f110b9 100644 --- a/modules/ROOT/pages/extending-neo4j/index.adoc +++ b/modules/ROOT/pages/extending-neo4j/index.adoc @@ -13,16 +13,13 @@ Neo4j provides the following methods to extend the standard functionality: * *Authentication and authorization plugins* extend the Neo4j security framework. * *Server extensions* enable new surfaces to be created in the HTTP API. -Writing extensions requires the user to be familiar with Java or other JVM programming languages, and to have an environment set up for compiling such code. - -//The following topics are: -// -//How to develop and deploy user-defined procedures and functions. -//How to develop and deploy customized authentication and authorization plugins. -//How to customize the analyzer used in a full-text index. -//How to build extensions for the Neo4j HTTP server. -//How to configure the Neo4j server for remote debugging sessions. - +[NOTE] +==== +The HTTP API is deprecated since Neo4j 5.26. +Instead, the Query API is introduced. +For details, refer to the link:neo4j-docs-base-uri/query-api/current[Query API documentation]. +==== +Writing extensions requires the user to be familiar with Java or other JVM programming languages, and to have an environment set up for compiling such code. diff --git a/modules/ROOT/pages/extending-neo4j/unmanaged-extensions.adoc b/modules/ROOT/pages/extending-neo4j/unmanaged-extensions.adoc index fda9117..8c1cfee 100644 --- a/modules/ROOT/pages/extending-neo4j/unmanaged-extensions.adoc +++ b/modules/ROOT/pages/extending-neo4j/unmanaged-extensions.adoc @@ -102,7 +102,7 @@ When writing unmanaged extensions, you have greater control over the amount of m If you keep too much state around, it can lead to more frequent full Garbage Collection and subsequent unresponsiveness by the Neo4j server. A common way that state can increase, is the creation of JSON objects to represent the result of a query, which is then sent back to your application. -Neo4j's Transactional Cypher HTTP endpoint (see link:{neo4j-docs-base-uri}/http-api/{page-version}/actions[HTTP API Docs -> transactional Cypher endpoint]) streams responses back to the client. +Neo4j's HTTP endpoint (see link:{neo4j-docs-base-uri}/http-api/current/transactions[HTTP API Docs -> Run transactions]) streams responses back to the client. For example, the following unmanaged extension streams an array of a person's colleagues: //https://github.com/neo4j/neo4j-documentation/blob/dev/server-examples/src/main/java/org/neo4j/examples/server/unmanaged/ColleaguesResource.java @@ -174,7 +174,7 @@ public class ColleaguesResource } ---- -The full source code isfound at: +The full source code is found at: link:https://github.com/neo4j/neo4j-documentation/blob/{neo4j-documentation-branch}/server-examples/src/main/java/org/neo4j/examples/server/unmanaged/ColleaguesResource.java[ColleaguesResource.java^] As well as depending on JAX-RS API, this example also uses Jackson -- a Java JSON library. @@ -295,7 +295,7 @@ public class ColleaguesCypherExecutionResource } ---- -The full source code isfound at: +The full source code is found at: link:https://github.com/neo4j/neo4j-documentation/blob/{neo4j-documentation-branch}/server-examples/src/main/java/org/neo4j/examples/server/unmanaged/ColleaguesCypherExecutionResource.java[ColleaguesCypherExecutionResource.java^] Your `findColleagues` method now responds to `GET` requests at the URI: @@ -380,7 +380,7 @@ public void testMyExtensionWithFunctionFixture() } ---- -The full source code of the example isfound at: +The full source code of the example is found at: link:https://github.com/neo4j/neo4j-documentation/blob/{neo4j-documentation-branch}/neo4j-harness-test/src/test/java/org/neo4j/harness/doc/ExtensionTestingDocIT.java[ExtensionTestingDocIT.java^] @@ -426,6 +426,6 @@ public void shouldWorkWithServer() } ---- -The full source code of the example isfound at: +The full source code of the example is found at: link:https://github.com/neo4j/neo4j-documentation/blob/{neo4j-documentation-branch}/neo4j-harness-test/src/test/java/org/neo4j/harness/doc/JUnitDocIT.java[JUnitDocIT.java^] diff --git a/modules/ROOT/pages/java-embedded/bolt.adoc b/modules/ROOT/pages/java-embedded/bolt.adoc index 027c52e..f9cc2fe 100644 --- a/modules/ROOT/pages/java-embedded/bolt.adoc +++ b/modules/ROOT/pages/java-embedded/bolt.adoc @@ -1,13 +1,10 @@ :description: How to open a Bolt connector to your embedded instance to get GUI administration and other benefits. -:org-neo4j-graphdb-factory-GraphDatabaseFactory: {neo4j-javadocs-base-uri}/org/neo4j/graphdb/factory/GraphDatabaseFactory.html - - [[java-embedded-bolt]] = Bolt connector This describes how to open a Bolt connector to your embedded instance to get GUI administration and other benefits. -Accessing Neo4j embedded via the Bolt protocol. +Accessing Neo4j embedded via the link:https://neo4j.com/docs/bolt/current/[Bolt protocol]. The Neo4j Browser and the official Neo4j Drivers use the Bolt database protocol to communicate with Neo4j. By default, Neo4j embedded does not expose a Bolt connector, but you can enable one. diff --git a/modules/ROOT/pages/java-embedded/cypher-java.adoc b/modules/ROOT/pages/java-embedded/cypher-java.adoc index 2433c8d..6e53763 100644 --- a/modules/ROOT/pages/java-embedded/cypher-java.adoc +++ b/modules/ROOT/pages/java-embedded/cypher-java.adoc @@ -68,7 +68,7 @@ Failing to do so will not properly clean up resources used by the `Result` objec In case you do not want to iterate over all of the results, make sure you invoke `close()` as soon as you are done, to release the resources tied to the result. ==== -The recommended way to handle results is to use a link:http://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html[try-with-resources statement^]. +The recommended way to handle results is to use the link:https://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html[try-with-resources statement^]. This ensures that the result is closed at the end of the statement. You can also get a list of the columns in the result: diff --git a/modules/ROOT/pages/java-embedded/property-values.adoc b/modules/ROOT/pages/java-embedded/property-values.adoc index 10a27bc..10b4417 100644 --- a/modules/ROOT/pages/java-embedded/property-values.adoc +++ b/modules/ROOT/pages/java-embedded/property-values.adoc @@ -40,7 +40,7 @@ Setting a property to `NULL` is equivalent to deleting the property. | java.time.temporal.TemporalAmount | A temporal amount. This captures the difference in time between two instants. |=== -For further details on float/double values, see link:http://docs.oracle.com/javase/specs/jls/se8/html/jls-4.html#jls-4.2.3[Java Language Specification]. +For further details on float/double values, see link:https://docs.oracle.com/javase/specs/jls/se17/html/jls-4.html#jls-4.2.3[Java Language Specification]. Note that there are two cases where more than one Java type is mapped to a single Cypher type. When this happens, type information is lost. diff --git a/modules/ROOT/pages/java-embedded/setup.adoc b/modules/ROOT/pages/java-embedded/setup.adoc index 6c586fa..7c61ea4 100644 --- a/modules/ROOT/pages/java-embedded/setup.adoc +++ b/modules/ROOT/pages/java-embedded/setup.adoc @@ -17,7 +17,6 @@ The following examples use the top-level artifact approach. [NOTE] -.[enterprise-edition] ==== The examples are only valid for Neo4j Community Edition. To add Neo4j Enterprise Edition as a dependency, please get in contact with link:https://neo4j.com/contact-us/[Neo4j Professional Services^]. @@ -51,7 +50,7 @@ Where the `artifactId` is found in the <> table. === Eclipse and Maven -For development in link:http://www.eclipse.org[Eclipse^], it is recommended to install the link:http://www.eclipse.org/m2e/[m2e plugin^] and let Maven manage the project build classpath instead. +For development in link:https://www.eclipse.org[Eclipse^], it is recommended to install the link:https://www.eclipse.org/m2e/[m2e plugin^] and let Maven manage the project build classpath instead. This also adds the possibility to build your project both via the command line with Maven and have a working Eclipse setup for development. @@ -287,40 +286,32 @@ JDK tools:: Eclipse:: * Right-click on the project and then go to _Build Path -> Configure Build Path_. In the dialog, select _Add External JARs_, browse the Neo4j _lib/_ directory, and select all the JAR files. - * Another option is to use link:http://help.eclipse.org/indigo/index.jsp?topic=/org.eclipse.jdt.doc.user/reference/preferences/java/buildpath/ref-preferences-user-libraries.htm[User Libraries^]. + * Another option is to use link:https://help.eclipse.org/indigo/index.jsp?topic=/org.eclipse.jdt.doc.user/reference/preferences/java/buildpath/ref-preferences-user-libraries.htm[User Libraries^]. IntelliJ IDEA:: - See link:http://www.jetbrains.com/help/idea/2016.1/configuring-project-and-global-libraries.html[Libraries, Global Libraries, and the Configure Library dialog^]. + See link:https://www.jetbrains.com/help/idea/library.html[Libraries^]. NetBeans:: - * Right-click on the _Libraries_ node of the project, select _Add JAR/Folder_, browse the Neo4j _lib/_ directory and select all the JAR files. - * You can also handle libraries from the project node, see link:http://netbeans.org/kb/docs/java/project-setup.html#projects-classpath[Managing a Project's Classpath^]. + * Right-click the _Libraries_ node of the project, select _Properties_, and then _JAR/Folder_, browse the Neo4j _lib/_ directory and select all the JAR files. + * You can also handle libraries from the project node, see link:https://docs.oracle.com/cd/E50453_01/doc.80/e50452/create_japps.htm#CHDFBFAD[Managing the Classpath^]. [[editions]] -== Editions +== Neo4j editions -The following table outlines the available editions and their names for use with dependency management tools. +The Neo4j Community Edition is available on the Maven Central Repository. +Follow the link below for details on dependency configuration with Apache Maven, Apache Buildr, Apache Ivy, Groovy Grape, and Scala SBT. -[TIP] -==== -Follow the links in the table for details on dependency configuration with Apache Maven, Apache Buildr, Apache Ivy, Groovy Grape, Grails, and Scala SBT. -==== - -.Neo4j editions +.Neo4j edition [cols="<20,<30,<50", options="header"] |=== -| Neo4j Edition +| Neo4j edition | Dependency | Description | Community -| link:http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22org.neo4j%22%20AND%20a%3A%22neo4j%22[org.neo4j:neo4j^] +| link:https://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22org.neo4j%22%20AND%20a%3A%22neo4j%22[org.neo4j:neo4j^] | A high-performance, fully ACID transactional graph database. -| Enterprise -| link:http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22org.neo4j%22%20AND%20a%3A%22neo4j-enterprise%22[org.neo4j:neo4j-enterprise^] -| Adding advanced monitoring, online backup, and clustering. - |=== Note that the listed dependencies do not contain the implementation, but pull it transitively. diff --git a/modules/ROOT/pages/jmx-metrics.adoc b/modules/ROOT/pages/jmx-metrics.adoc index fd877d8..9be3c3d 100644 --- a/modules/ROOT/pages/jmx-metrics.adoc +++ b/modules/ROOT/pages/jmx-metrics.adoc @@ -43,7 +43,7 @@ server.jvm.additional=-Dcom.sun.management.jmxremote.ssl=false [IMPORTANT] ==== -Although SSL for JMX Remote Management is disabled throughout this document, to configure it based on your requirements, you can follow the instructions in the link:https://docs.oracle.com/en/java/javase/11/management/monitoring-and-management-using-jmx-technology.html[Java SE 11 Monitoring and Management Guide^]. +Although SSL for JMX Remote Management is disabled throughout this document, to configure it based on your requirements, you can follow the instructions in the link:https://docs.oracle.com/en/java/javase/17/management/monitoring-and-management-using-jmx-technology.html[Java SE 17 Monitoring and Management Guide^]. ==== @@ -53,7 +53,7 @@ Although SSL for JMX Remote Management is disabled throughout this document, to Password authentication is enabled by default in JMX Remote Management. You can find information about setting up authentication with LDAP and file-based approach in the following sections. -Refer to the link:https://docs.oracle.com/en/java/javase/11/management/monitoring-and-management-using-jmx-technology.html[Java SE 11 Monitoring and Management Guide^] for more options, including configuration steps for SSL client authentication. +Refer to the link:https://docs.oracle.com/en/java/javase/17/management/monitoring-and-management-using-jmx-technology.html[Java SE 17 Monitoring and Management Guide^] for more options, including configuration steps for SSL client authentication. [[ldap]] @@ -184,7 +184,7 @@ The `` value is configured by the `com.sun.management.jmxremote.port` prop Besides the MBeans, exposed by the JVM, you also see be default `neo4j.metrics` section in the MBeans tab. Under that, you have access to all the monitoring information exposed by Neo4j. -For opening JMX to remote monitoring access, please see <> and link:https://docs.oracle.com/en/java/javase/11/management/monitoring-and-management-using-jmx-technology.html#GUID-805517EC-2D33-4D61-81D8-4D0FA770D1B8[the JMX documention^]. +For opening JMX to remote monitoring access, please see <> and link:https://docs.oracle.com/en/java/javase/17/management/monitoring-and-management-using-jmx-technology.html#GUID-805517EC-2D33-4D61-81D8-4D0FA770D1B8[the JMX documentation^]. .Neo4j MBeans view image::jconsole-beans1.png[alt="Neo4j MBeans view", width=600]