<!-- <questionid="arch-overall"when="init"> Describetheoverallarchitecture. <hint> WhatwillbeAPIfor <ahref="http://openide.netbeans.org/tutorial/api-design.html#design.apiandspi"> clientsandwhatsupportAPI</a>? Whatpartswillbepluggable? Howwillplug-insberegistered?Pleaseuse<code><apitype="export"/></code> todescribeyourgeneralAPIs. Ifpossiblepleaseprovide simplediagrams. </hint> </question>
-->
<answer id="arch-overall">
<p>
The module exposes a new NetBeans project type to create Java EE Enterprise
Application Client Module project, where a developer can create standard Java SE
applications, which have direct access to the server environment and resources
(such as EJBs, Web Services), develop these applications, assemble them according
to Java EE specification, build them and deploy them to Application servers.
</p>
<p>
It uses various project APIs to implement the project type. <a href="http://projects.netbeans.org/buildsys/design.html">Build system design
document</a>. Implements j2ee/ejbapi to provide a project container
for an Enterprise application client module.
</p>
<ol>
<li>
<api group="dtd" name="car-project.xsd"type="export" category="devel"url="http://www.netbeans.org/ns/car-project/1.xsd">
<p>
Definition of clientproject-specific portions of <code>project.xml</code>.
</p>
</api>
</li>
<li>
<api group="java.io.File" name="project.properties"type="export" category="devel">
<p>
Definition of recognized keys in <code>project.properties</code> and/or
<code>private.properties</code>. XXX not yet formally specified.
</p>
</api>
</li>
<li>
<api group="java.io.File" name="build-impl.xml"type="export" category="devel">
<p>
Definition of targets in <code>build-impl.xml</code> which may be called or
overridden in <code>build.xml</code>. XXX not yet formally specified.
</p>
</api>
</li>
<li>
<api group="java.io.File" name="LayoutOfProjectFiles"type="export" category="private">
<p>
Modules should make no assumptions about the layout of project directory other then
what is explicitly exposed via API (such as J2eeModuleProvider from j2eeserver API,
AntArtifact).
</p>
</api>
</li>
</ol>
</answer>
<!-- <questionid="arch-quality"when="init"> Howwillthe<ahref="http://www.netbeans.org/community/guidelines/q-evangelism.html">quality</a> ofyourcodebetestedand howarefutureregressionsgoingtobeprevented? <hint> Whatkindoftestingdo youwanttouse?Howmuchfunctionality,inwhichareas, shouldbecoveredbythetests? </hint> </question>
-->
<answer id="arch-quality">
<p>
There are some unit tests (not enough). IDE-wide functional testing covers
much of the module's functionality.
</p>
</answer>
<!-- <questionid="arch-usecases"when="init"> <hint> Contentofthisanswerwillbedisplayedaspartofpageat http://www.netbeans.org/download/dev/javadoc/usecases.html Youcanusetags<usecasename="name>regularhtmldescription</usecase> andifyouwanttouseanURLyoucanprefixifwith@TOP@tobegin attherootofyourjavadoc </hint> Describethemain<ahref="http://openide.netbeans.org/tutorial/api-design.html#usecase"> usecases</a>ofthenewAPI.Whowilluseitunder whatcircumstances?Whatkindofcodewouldtypicallyneedtobewritten tousethemodule? </question>
-->
<answer id="arch-usecases">
<p>
<usecase id="id" name="Project Generator" >
AppClientProjectGenerator can be used to generate an Application Client module
project. This can be used for example to create a populated EAR project
together with an Application Client module project.
This is the only (private) API.
</usecase>
</p>
<p>
The rest is covered by UI specification and design document.
</p>
</answer>
<!-- <questionid="arch-what"when="init"> Whatisthisprojectgoodfor? <hint> Pleaseprovidehereafewlinesdescribingtheproject, whatproblemitshouldsolve,providelinkstodocumentation, specifications,etc. </hint> </question>
-->
<answer id="arch-what">
<p>
Provides a project type for Java EE enterprise application client module
projects. Application client projects can be created from scratch,
or you can import existing application client module source trees. Creates an Ant script letting you build the project (and subprojects), deploy it, debug it, run
JUnit-format tests, and build Javadoc. Standard and server specific
configuration files are displayed in project and can be edited. GUI customizer
permits easy customization of the most commonly needed project parameters.
Provides code completion and other services for editing Java sources.
Classpaths can include other projects, raw JARs, or configured libraries.
Specific J2SE platforms may be configured. Target J2EE server can be selected
and provides code completion for the Java EE APIs available on the server.
<a href="http://j2ee.netbeans.org/docs/promog/appclient-project-ui-spec-promog.html">Full UI
specification</a>
</p>
<api name="ClientProject" category="friend" group="java"type="export">
<p>
The module exposes a new NetBeans project type to create Java EE Application
Client Module project, where a developer can add EJBs, develop them, assemble them, build them and deploy them to Application servers.
The friend API allows EAR project to create an Application Client module project. It also allows the ejbcore project to set
one property in nbproject\project.properties file.
</p>
</api>
</answer>
<!-- <questionid="compat-i18n"when="impl"> Isyourmodulecorrectlyinternationalized? <hint> Correctinternationalizationmeansthatitobeysinstructions at<ahref="http://www.netbeans.org/download/dev/javadoc/org-openide-modules/org/openide/modules/doc-files/i18n-branding.html"> NetBeansI18Npages</a>. </hint> </question>
-->
<answer id="compat-i18n">
<p>
Yes, although the project type does not yet internationalize messages coming
from its (unedited) build scripts. This is possible but not yet implemented.
</p>
</answer>
<!-- <questionid="compat-standards"when="init"> Doesthemoduleimplementordefineanystandards?Isthe implementationexactordoesitdeviatesomehow? </question>
-->
<answer id="compat-standards">
<p>
The module follows the Java EE 5 specifications. It allows the user
to develop applications conforming to this standard. The implementation is exact,
in the sense that the module accepts any compliant Application Client Module.
Since Java EE 5 has to be backward comaptible with J2EE 1.4, this module
supports J2EE 1.4 Application Client Modules. This module also supports J2EE 1.3
compliant Application Client modules, but it does not help you to create NEW ones,
it will just behave nicely with 1.3 Apps, due to the API layer designed in the j2ee/ddapi
module that handles more than one specification version of J2EE.
</p>
</answer>
<!-- <questionid="compat-version"when="impl"> Canyourmodulecoexistwithearlierandfuture versionsofitself?Canyoucorrectlyreadalloldsettings?Willfuture versionsbeabletoreadyourcurrentsettings?Canyouread orpolitelyignoresettingsstoredbyafutureversion? <hint> Veryhelpfulforreadingsettingsistostoreversionnumber there,sofutureversionscandecidewhetherhowtoread/convert thesettingsandolderversionscanignorethenewones. </hint> </question>
-->
<answer id="compat-version">
<p>
The module stores some information into persistent data, and makes the best
effort to correctly interpret information stored by previous versions of the
module. It is anticipated that future versions of the module will be able to
interpret information stored by the current version, whenever possible and practical.
</p>
</answer>
<!-- <questionid="dep-jrejdk"when="final"> DoyourequiretheJDKoristheJREenough? </question>
-->
<answer id="dep-jrejdk">
<p>
The JDK is needed for critical functionality such as compiling sources.
</p>
</answer>
<!-- <questionid="exec-component"when="impl"> Isexecutionofyourcodeinfluencedbyany(string)property ofanyofyourcomponents? <hint> Often<code>JComponent.getClientProperty</code>,<code>Action.getValue</code> or<code>PropertyDescriptor.getValue</code>,etc.areusedtoinfluence abehaviorofsomecode.Thisofcourseformsaninterfacethatshould bedocumented.Alsoifonedependsonsomeinterfacethatanobject implements(<code>componentinstanceofRunnable</code>)thatformsan APIaswell. </hint> </question>
-->
<answer id="exec-component">
<p>
Uses property <code>platform.ant.name</code> returned by the <code>J2SEPlatformImpl.getProperties()</code>
to determine the name of platform used in build scripts.
</p>
</answer>
<!-- <questionid="format-types"when="impl"> Whichprotocolsandfileformats(ifany)doesyourmodulereadorwriteondisk, ortransmitorreceiveoverthenetwork?Doyougenerateanantbuildscript? Canitbeeditedandmodified? <hint> <p> Filescanbereadandwrittenbyotherprograms,modulesandusers.Iftheyinfluence yourbehaviour,makesureyoueitherdocumenttheformatorclaimthatitisaprivate api(usingthe<api>tag). </p> <p> Ifyougenerateanantbuildfile,thisisverylikelygoingtobeseenbyendusersand theywillbeattemptedtoeditit.Youshouldbereadyforthatandprovideherealink todocumentationthatyouhaveforsuchpurposesandalsodescribehowyouaregoingto understandsuchfilesduringnextrelease,whenyou(verylikely)slightlychangethe format. </p> </hint> </question>
-->
<answer id="format-types">
<p>
It writes files through the OpenAPIs, specifically through the FileSystem API
and the Settings API.
Additionally, it reads the files in the formats specified by the J2EE 1.4
and Java EE 5 specification.
</p>
<p>
The usual Ant-based project metadata files and build scripts.
</p>
<p>
Depends on the structure of built Javadoc. It tries to find the <code>overview-summary.html</code> in the
<code>api</code> folder, and the <code>package-summary.html</code> and Javadoc pages for classes in the
package structure under the <code>api</code> folder.
</p>
<p> <!-- #58823 --> Writes XML-format JUnit results to <code>${build.test.results.dir}</code> for use by
<code>org.netbeans.modules.junit</code>.
</p>
</answer>
<!-- <questionid="lookup-register"when="final"> Doyouregisteranythingintolookupforothercodetofind? <hint> Doyouregisterusinglayerfileorusing<code>META-INF/services</code>? Whoissupposedtofindyourcomponent? </hint> </question>
-->
<answer id="lookup-register">
<p>
Project type and various query implementations are registered. An
<code>AntLogger</code> is registered which currently just tweaks the
appearance of compiler errors.
</p>
</answer>
<!-- <questionid="perf-exit"when="final"> Doesyourmodulerunanycodeonexit? </question>
-->
<answer id="perf-exit">
<p>
Not usually, though modified project metadata is saved on close or exit.
(Normally all GUI actions autosave immediately anyway.) It also unregisters
some listeners.
</p>
</answer>
<!-- <questionid="perf-huge_dialogs"when="final"> Doesyourmodulecontainanydialogsorwizardswithalargenumberof GUIcontrolssuchascomboboxes,lists,trees,ortextareas? </question>
-->
<answer id="perf-huge_dialogs">
<p>
No, all dialogs and wizards are of reasonable complexity.
</p>
</answer>
<!-- <questionid="perf-progress"when="final"> Doesyourmoduleexecuteanylong-runningtasks? <hint>Longrunningtasksshouldneverblock AWTthreadasitbadlyhurtstheUI <ahref="http://performance.netbeans.org/responsiveness/issues.html"> responsiveness</a>. Taskslikeconnectingover network,computinghugeamountofdata,compilation bedoneasynchronously(forexample using<code>RequestProcessor</code>),definitivelyitshould notblockAWTthread. </hint> </question>
-->
<answer id="perf-progress">
<p>
It launches the compilation of Java files, and deployment of standalone Application Client Module.
Although ultimately these tasks are not directly performed
by this module (but by cooperating modules), it can be assumed that these tasks
will be long running.
Another long running task is the mounting of additional filesystems when
an application client module is registered or created in the IDE.
</p>
</answer>
<!-- <questionid="perf-scale"when="init"> Whichexternalcriteriainfluencetheperformanceofyour program(sizeoffileineditor,numberoffilesinmenu, insourcedirectory,etc.)andhowwellyourcodescales? <hint> Pleaseincludesomeestimates,thereareothermoredetailed questionstoanswerinlaterphasesofimplementation. </hint> </question>
-->
<answer id="perf-scale">
<p>
Number of source files in the project will affect the time it takes to scan
for a main class.
</p>
</answer>
<!-- <questionid="resources-file"when="final"> Doesyourmoduleuse<code>java.io.File</code>directly? <hint> NetBeansprovidealogicalwrapperoverplainfilescalled <code>org.openide.filesystems.FileObject</code>that providesuniformaccesstosuchresourcesandisthepreferred waythatshouldbeused.Butofcoursetherecanbesituationswhen thisisnotsuitable. </hint> </question>
-->
<answer id="resources-file">
<p>
Yes. The use of <code>java.io.File</code> is needed for interaction with the
Server Integration APIs, which expect it as parameters in some API calls.
</p>
</answer>
<!-- <questionid="resources-layer"when="final"> Doesyourmoduleprovideownlayer?Doesitcreateanyfilesor foldersinit?Whatitistryingtocommunicatebythatandwithwhich components? <hint> NetBeansallowsautomaticanddeclarativeinstallationofresources bymodulelayers.Moduleregisterfilesintoappropriateplaces andothercomponentsusethatinformationtoperformtheirtask (buildmenu,toolbar,windowlayout,listoftemplates,setof options,etc.). </hint> </question>
-->
<answer id="resources-layer">
<p>
The new project wizard is registered in the layer.
</p>
</answer>
<!-- <questionid="resources-read"when="final"> Doesyourmodulereadanyresourcesfromlayers?Forwhatpurpose? <hint> Asthisissomekindofintermoduledependency,itisakindofAPI. Pleasedescribeitandclassifyaccordingto <ahref="http://openide.netbeans.org/tutorial/api-design.html#categories"> commonstabilitycategories</a>. </hint> </question>
-->
<answer id="resources-read">
<api group="layer" name="ClientLookup"type="export" category="official">
<p> "Projects/org-netbeans-modules-j2ee-clientproject/Lookup" folder's content is used to construct the project's additional lookup.
It's content is expected to be <code>LookupProvider</code> instances. AppClient project provides <code>LookupMerger</code>s
for <code>Sources</code>, <code>PrivilegedTemplates</code> and <code>RecommendedTemplates</code>. Implementations added by 3rd parties
will be merged into a single instance in the project's lookup.
</p>
</api>
<api group="layer" name="ClientProjectCustomizer"type="export" category="official">
<p> "Projects/org-netbeans-modules-j2ee-clientproject/Customizer" folder's content is used to construct the project's customizer.
It's content is expected to be <code>ProjectCustomizer.CompositeCategoryProvider</code> instances.
The lookup passed to the panels contains an instance of <code>Project</code> and <code>org.netbeans.modules.j2ee.clientproject.ui.customizer.AppClientProjectProperties</code>
Please note that the latter is not part of any public APIs and you need implementation dependency to make use of it.
</p>
</api>
</answer>
¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.47Angebot
(Wie Sie bei der Firma Beratungs- und Dienstleistungen beauftragen können 2026-09-27)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.