How to add SceneBuilder to Intellij after mistakenly adding the SceneBuilder's shortcut link - intellij-idea

So I installed Intellij for the first time and I mistakenly linked SceneBuilder's shortcut link to the FXML file and keep getting this error: IntelliJ failed to start scene builder. After doing a lot of searching, I could not find out how to reset SceneBuilder. How do I reset SceneBuilder in IntelliJ?

Go to Settings > Languages & Frameworks > JavaFX > Path to SceneBuilder and select directory of JavaFX Scene Builder 2.0.exe

I had to follow this instruction to find the files I needed to edit. -> Instructions
I use Windows 10 so I used <SYSTEM DRIVE>\Users\<USER ACCOUNT NAME>\.<PRODUCT><VERSION>. My path looks like C:\Users\yourUserName\.IdeaIC2017.3\config. Next, I searched for "scenebulder". The results lead me to a file named "options" and a file named "other".
other.xml
<application>
<component name="JavaFxSettings">
<!-- change here --><option name="pathToSceneBuilder" value="$USER_HOME$/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Gluon/SceneBuilder.lnk" />
<!-- change here --><option name="myPathToSceneBuilder" value="$USER_HOME$/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Gluon/SceneBuilder.lnk" />
</component>
</application>
options.xml
<application>
<component name="PropertiesComponent">
<property name="Default.savedEditorTheme" value="_#user_Default" />
<property name="installed.kotlin.plugin.version" value="1.2.10-release-IJ2017.3-1" />
<property name="project.wizard.group" value="JavaFX Application" />
<property name="project.wizard.template" value="JavaFX Application" />
<!-- change here --><property name="file.chooser.recent.files" value="$USER_HOME$/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Gluon/SceneBuilder.lnk
C:/Program Files/Java/jdk1.8.0_141" />
<property name="jdk.selected.JAVA_MODULE" value="1.8" />
<property name="file.gist.reindex.count" value="641" />
<property name="lastTip" value="3" />
<property name="settings.code.style.selected.tab.JAVA" value="Tabs and Indents" />
<property name="FileTemplates.SelectedTemplate" value="HTML File" />
</component>
</application>
I found where my SceneBuilder exe is located and changed the path in both files.
other.xml
<application>
<component name="JavaFxSettings">
<!-- change here --><option name="pathToSceneBuilder" value="$USER_HOME$/AppData/Local/SceneBuilder/SceneBuilder.exe" />
<!-- change here --><option name="myPathToSceneBuilder" value="$USER_HOME$/AppData/Local/SceneBuilder/SceneBuilder.exe" />
</component>
</application>
options.xml
<application>
<component name="PropertiesComponent">
<property name="Default.savedEditorTheme" value="_#user_Default" />
<property name="installed.kotlin.plugin.version" value="1.2.10-release-IJ2017.3-1" />
<property name="project.wizard.group" value="JavaFX Application" />
<property name="project.wizard.template" value="JavaFX Application" />
<!-- change here --><property name="file.chooser.recent.files" value="$USER_HOME$/AppData/Local/SceneBuilder/SceneBuilder.exe
C:/Program Files/Java/jdk1.8.0_141" />
<property name="jdk.selected.JAVA_MODULE" value="1.8" />
<property name="file.gist.reindex.count" value="641" />
<property name="lastTip" value="3" />
<property name="settings.code.style.selected.tab.JAVA" value="Tabs and Indents" />
<property name="FileTemplates.SelectedTemplate" value="HTML File" />
</component>
</application>
Finally, I restarted IntelliJ and right clicked on the FXML file and selected "Open in SceneBuilder" and it worked.

follow the below step
Download and install scenebuilder(download same version of scene builder as your Java in your machine for eg if you have Java 8 on your local then download Scene builder version 8)
1.Open intellij -> Navigate to file -> Setting -> Type JavaFx
Set the location of scenebuilder in your local machine to the path as shown below
C:\Users\userid\AppData\Local\SceneBuilder\SceneBuilder.exe
Click apply and OK.
Now try to access scene builder from your .fxml file

Related

Wix setup uses default Application path on Update and not from registry as expected

We are using Wix Toolset V3.11 to build our setup.
Because of the following declaration, our default installation Path is C:/Program Files(x86)/Acme/AppName.
<Property Id="ApplicationFolderName" Value="$(var.Manufacturer)\$(var.AppFolderName)" />
<Property Id="WixAppFolder" Value="WixPerMachineFolder" />
Via the 'Advanced' button in the setup we change this path to C:/Program Files(x86)/Acme/FooBar:
The following declaration saves the changed path in the registry:
<RegistryKey
Key="Software\$(var.Manufacturer)\$(var.AppName)"
Root="HKLM">
<RegistryValue Id="InstallationRegistry"
Type="string"
Name="InstallDir"
Value="[APPLICATIONFOLDER]" />
</RegistryKey>
Via Regedit.exe I can see the Path C:/Program Files(x86)/Acme/FooBar in the Registry as expected. All okay.
Problem: But now, when I run a new setup which is an update, then all Files have been moved from the custom folder C:/Program Files(x86)/Acme/FooBar to the default folder C:/Program Files(x86)/Acme/AppName.
When I execute an update and click on the 'Advanced' button, then the default path C:/Program Files(x86)/Acme/AppName is preallocated:
I use the following markup to query the Path out of the Registry:
<Property Id="APPLICATIONFOLDER">
<RegistrySearch Id='InstallationRegistrySearch' Type='raw' Root='HKLM' Key='Software\$(var.Manufacturer)\$(var.AppName)' Name='InstallDir' />
</Property>
Here is the relevant markup:
<Fragment>
<ComponentGroup Id="RootComponents" Directory="APPLICATIONFOLDER">
<Component Id="RootComponent" Guid="xxxxxxxxx" Win64='yes'>
<RegistryKey
Key="Software\$(var.Manufacturer)\$(var.AppName)"
Root="HKLM">
<RegistryValue Id="InstallationRegistry"
Type="string"
Name="InstallDir"
Value="[APPLICATIONFOLDER]" />
</RegistryKey>
</Component>
</ComponentGroup>
[...]
<Product ...>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="PROGRAMFILESPATH" Name="$(var.ProgramFilesPath)">
<Directory Id="ManufacturerFolder" Name="$(var.Manufacturer)">
<Directory Id="APPLICATIONFOLDER" Name="$(var.AppFolderName)" >
<!-- here are the application files (e.g. Appname.exe)-->
[...]
</Directory>
</Directory>
</Directory>
</Directory>
[...]
<Property Id="ApplicationFolderName" Value="$(var.Manufacturer)\$(var.AppFolderName)" />
<Property Id="WixAppFolder" Value="WixPerMachineFolder" />
<Property Id="APPLICATIONFOLDER">
<RegistrySearch Id='InstallationRegistrySearch' Type='raw' Root='HKLM' Key='Software\$(var.Manufacturer)\$(var.AppName)' Name='InstallDir' />
</Property>
<Property Id="PREVIOUSVERSIONSINSTALLED" Secure="yes" />
<Property Id="ALLUSERS" Value="1"/>
[...]
<UI>
[...]
<UIRef Id="WixUI_Advanced"/>
</UI>
</Product>
What are we doing wrong?
Remember Properties: Property values are not auto-magically persisted by MSI, hence the need for patterns such as the "Remember Property Pattern".
Bitness: It looks like you are reading back from the registry, but could it be that you have a "bitness problem"? In other words you read from the x64-section of the registry and not the x86-section? (or vice versa).
HKEY_LOCAL_MACHINE\SOFTWARE\Manufacturer\Acme\Program
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Manufacturer\Acme\Program

Orchard 1.7 publish error: The "MSBuild.Orchard.Tasks.XmlDelete" task could not be loaded from the assembly

I have a local Orchard 1.7 cms site, which i have customized and so forth. My task is now to publish my site to my host(arvixe.com) through Visual Studio Ultimate 2012 - via the publish option. But the publish fails and i get this error:
Error 1 The "MSBuild.Orchard.Tasks.XmlDelete" task could not be loaded from the assembly C:\Users\WilliamHolm\Documents\Visual Studio 2012\Projects\whj\src\Orchard.Web\..\Tools\MSBuild.Orchard.Tasks\bin\Release\MSBuild.Orchard.Tasks.dll. Could not load file or assembly 'file:///C:\Users\WilliamHolm\Documents\Visual Studio 2012\Projects\whj\src\Tools\MSBuild.Orchard.Tasks\bin\Release\MSBuild.Orchard.Tasks.dll' or one of its dependencies. The system cannot find the file specified. Confirm that the <UsingTask> declaration is correct, that the assembly and all its dependencies are available, and that the task contains a public class that implements Microsoft.Build.Framework.ITask. C:\Users\WilliamHolm\Documents\Visual Studio 2012\Projects\whj\src\Orchard.Web\Orchard.Web.csproj 247 5 Orchard.Web
by looking at the source where the error is located around line 247, in the Orchard.Web.csproj, it looks like this:
</Target>
<Import Project="$(ProjectDir)..\..\lib\msbuild\MSBuild.Community.Tasks.Targets" />
<UsingTask AssemblyFile="$(ProjectDir)..\Tools\MSBuild.Orchard.Tasks\bin\Release\MSBuild.Orchard.Tasks.dll" TaskName="MSBuild.Orchard.Tasks.XmlDelete" />
<Target Name="ProcessConfigurationFiles" AfterTargets="CopyAllFilesToSingleFolderForMsdeploy">
<PropertyGroup>
<PackageTmp>$(ProjectDir)obj\Release\Package\PackageTmp</PackageTmp>
</PropertyGroup>
<!-- extra processing of the staged config files -->
<XmlUpdate XmlFileName="$(PackageTmp)\web.config" XPath="/configuration/system.web/compilation/#debug" Value="false" />
<XmlDelete XmlFileName="$(PackageTmp)\web.config" XPath="/configuration/system.web/trust" />
<XmlUpdate XmlFileName="$(PackageTmp)\web.config" XPath="/configuration/system.web/machineKey/#validationKey" Value="AutoGenerate" />
<XmlUpdate XmlFileName="$(PackageTmp)\web.config" XPath="/configuration/system.web/machineKey/#decryptionKey" Value="AutoGenerate" />
<XmlUpdate XmlFileName="$(PackageTmp)\Config\log4net.config" XPath="/log4net/appender/immediateFlush/#value" Value="false" />
<XmlUpdate XmlFileName="$(PackageTmp)\Config\log4net.config" XPath="/log4net/logger/priority/#value" Value="ERROR" />
<XmlUpdate XmlFileName="$(PackageTmp)\Config\log4net.config" XPath="/log4net/root/priority/#value" Value="ERROR" />
<XmlDelete XmlFileName="$(PackageTmp)\Config\log4net.config" XPath="/log4net/appender[#name='debug-file']" />
<XmlDelete XmlFileName="$(PackageTmp)\Config\log4net.config" XPath="/log4net/appender[#name='debugger']" />
<XmlDelete XmlFileName="$(PackageTmp)\Config\log4net.config" XPath="/log4net/appender[#name='error-file']/filter" />
<XmlDelete XmlFileName="$(PackageTmp)\Config\log4net.config" XPath="/log4net/logger[#name='Orchard.Localization']" />
<XmlDelete XmlFileName="$(PackageTmp)\Config\log4net.config" XPath="/log4net/logger[#name='Orchard']" />
<XmlDelete XmlFileName="$(PackageTmp)\Config\log4net.config" XPath="/log4net/root/appender-ref[#ref='debug-file']" />
<!-- disable all file monitoring but ExtensionMonitoringCorrdinator to detect new modules/themes -->
<XmlUpdate XmlFileName="$(PackageTmp)\Config\HostComponents.config" XPath="/HostComponents/Components/Component/Properties/Property[#Name='DisableMonitoring']/#Value" Value="true" />
</Target>
The closest ting i can find on this, is this thread:
http://orchard.codeplex.com/workitem/19688
and i have tried those advices, but it keeps failing.
Does anyone have a solution for this?
THX in advance.
/Will.
I found the solution.
Please change following path to =>
<UsingTask AssemblyFile="C:\Users\Shaun\Documents\#GitHub\CertifiedOverheadCrane\orchard1x\src\Tools\MSBuild.Orchard.Tasks\bin\Release\MSBuild.Orchard.Tasks.dll"
TaskName="MSBuild.Orchard.Tasks.XmlDelete" />
Original:
<!--<UsingTask AssemblyFile="$(ProjectDir)\..\Tools\MSBuild.Orchard.Tasks\bin\Release\MSBuild.Orchard.Tasks.dll"
TaskName="MSBuild.Orchard.Tasks.XmlDelete" />-->
Don't forget to restart VS.
The solution to my problem was that i had only built the project in "Debug" configuration, while my publishing option was looking for "Release". So I only changed it to "Release" in the Solutions Configurations and pressed --> Build/Build Solution. That worked!
/Will.

Intellij 12 and websphere liberty 8.5 next beta - Application server libraries not found

I installed the latest WebSphere liberty profile to the Mac:
wlp-developers-runtime-8.5.next.beta.jar
WebSphere version is shown as 8.5.next.beta in Intellij.
In Intellij 12 I try to add this WebSphere Application Server and I get:
Cannot Save Settings: Application server libraries not found
If I look on the filesystem it seems that the location of:
com.ibm.ws.javaee.jsp.2.2_1.0.0.0.jar
com.ibm.ws.javaee.servlet.3.0_1.0.0.jar
has changes from /dev/spec to /dev/api/spec
I am not sure if this is the root cause, but Intellij seems to add these to the classpath in the previous version. Is there a way to get intellij up and running e.g. can I change the location where it looks for the libs?
Had the same issue. There are two ways.
Either unpack wlp 8.5 into the folder where you want to have wlp 8.5.next. Once unpacked, point IntelliJ to that folder and it will detect it. Once detected, just remove the wlp folder and unpack the 8.5.next in the same. Once done, correct the library paths.
Or; Open IntelliJ's other.xml-file (it's usually in ~/.IntelliJIDEA12/config/options/other.xml) and modify as following:
<?xml version="1.0" encoding="UTF-8"?>
<application>
<!-- other stuff -->
<component name="AppserversManager">
<LibraryTable>
<library name="WebSphere 8.5.Next.Beta">
<CLASSES>
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.annotation.1.1_1.0.0.jar!/" />
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.cdi.1.0_1.0.0.jar!/" />
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.ejb.3.1_1.0.0.jar!/" />
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.el.2.2_1.0.1.jar!/" />
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.interceptor.1.1_1.0.0.jar!/" />
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.jaxb.2.2_1.0.0.jar!/" />
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.jaxrs.1.1_1.0.0.jar!/" />
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.jaxws.2.2_1.0.0.jar!/" />
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.jms.1.1_1.0.0.jar!/" />
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.jsf.2.0_1.0.0.jar!/" />
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.jsf.tld.2.0_1.0.0.jar!/" />
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.jsp.2.2_1.0.0.jar!/" />
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.jsp.tld.2.2_1.0.0.jar!/" />
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.jstl.1.2_1.0.0.jar!/" />
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.persistence.2.0_1.0.0.jar!/" />
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.servlet.3.0_1.0.0.jar!/" />
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.transaction.1.1_1.0.0.jar!/" />
<root url="jar:///opt/wlp/dev/api/spec/com.ibm.ws.javaee.validation.1.0_1.0.0.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</LibraryTable>
<ServerDK NAME="WebSphere 8.5.Next.Beta">
<option name="SOURCE_INTEGRATION_NAME" value="WebSphere Server" />
<DATA>
<state>
<option name="home" value="/opt/wlp" />
<option name="version" value="8.5.next.beta" />
</state>
</DATA>
</ServerDK>
</component>
<!-- rest -->
</application>
This has now been officially fixed in Intelli 12.1.2 and newer. The release notes and original ticket have further details.

How do I evaluate a string as a property name in Nant?

I'm rejigging our deploy scripts, and have moved to external config files for each defined environment. I have the ${environment} and the ${system} component passed as variables on the command line.
I load config.${environment}.xml, which contains a bunch of property definitions.
<property name="server.component1" value="server01" />
<property name="server.component2" value="server02" />
<property name="drive.component1" value="C:\" />
<property name="drive.component2" value="D:\" />
<property name="unc.component1" value="\\${server.component1}\Builds\${system}\${build.date}" />
<property name="unc.component2" value="\\${server.component2}\Builds\${system}\${build.date}" />
To determine the server to deploy to, I need to combine 'server' and ${system} and then evaluate as a property name. I'm missing something here.
<property name="server" value="${'server.' + system}" /><!-- TODO make this work -->
<property name="server" value="server.${system}" />
The property::get-value function should be of some help:
<property name="server" value="${property::get-value('server.' + system)}" />

Adding ContentTypes to a list with SiteDefinition

Using SharePoint 2010 and Visual Studio I have created a site definition (inheriting from the publishing site) which correctly creates all the required lists and now includes page instances in the "Pages" document library.
The Pages use the correct custom pagelayout and the correct content type, however, because the "pages" library only accepts Article, Blank and Welcome pages by default it doesnt know about my custom content types and therefore the page doesn't work as expected.
I've tried adding an EventListener on the "List Added" event, with no success, the debugging doesnt even break at my breakpoints, I've also tried the List Adding, List Item added and Site Provisioned events. None of which seem to work the way I want.
I've included the XML for the Site Definition below, how do I add my custom content types to the pages library so I dont have to manually add it?
<?xml version="1.0" encoding="utf-8"?>
<Project Title="Custom_Site_Definition" Revision="2" ListDir="" xmlns:ows="Microsoft SharePoint" xmlns="http://schemas.microsoft.com/sharepoint/">
<NavBars>
<NavBar Name="SharePoint Top Navbar" Url="/Site Template" ID="1002" />
<!-- removed -->
</NavBars>
<Configurations>
<Configuration ID="0" Name="Custom_Site_Definition">
<Lists />
<WebFeatures>
<!-- Include the common WSSListTemplateFeatures used by CMS -->
<Feature ID="00BFEA71-DE22-43B2-A848-C05709900100" > </Feature>
<Feature ID="00BFEA71-E717-4E80-AA17-D0C71B360101" > </Feature>
<Feature ID="00BFEA71-52D4-45B3-B544-B1C71B620109" > </Feature>
<Feature ID="00BFEA71-A83E-497E-9BA0-7A5C597D0107" > </Feature>
<Feature ID="00BFEA71-4EA5-48D4-A4AD-305CF7030140" > </Feature>
<Feature ID="00BFEA71-F600-43F6-A895-40C0DE7B0117" > </Feature>
<Feature ID="00BFEA71-4EA5-48D4-A4AD-7EA5C011ABE5">
</Feature>
<Feature ID="22A9EF51-737B-4ff2-9346-694633FE4416">
<Properties xmlns="http://schemas.microsoft.com/sharepoint/">
<Property Key="ChromeMasterUrl" Value=""/>
<Property Key="WelcomePageUrl" Value="$Resources:osrvcore,List_Pages_UrlName;/at-a-glance.aspx"/>
<Property Key="PagesListUrl" Value=""/>
<Property Key="AvailableWebTemplates" Value=""/>
<Property Key="AvailablePageLayouts" Value=""/>
<Property Key="SimplePublishing" Value="true" />
</Properties>
</Feature>
<Feature ID="541F5F57-C847-4e16-B59A-B31E90E6F9EA">
<Properties xmlns="http://schemas.microsoft.com/sharepoint/">
<Property Key="InheritGlobalNavigation" Value="true"/>
<Property Key="ShowSiblings" Value="true"/>
<Property Key="IncludeSubSites" Value="true"/>
</Properties>
</Feature>
<Feature ID="94C94CA6-B32F-4da9-A9E3-1F3D343D7ECB">
<!-- Office SharePoint Server Publishing -->
</Feature>
</WebFeatures>
<Modules>
<Module Name="Home" />
</Modules>
</Configuration>
</Configurations>
<Modules>
<Module Name="Home" Url="$Resources:osrvcore,List_Pages_UrlName;" Path="">
<File Url="at-a-glance.aspx" Type="GhostableInLibrary" Level="Draft" >
<Property Name="PublishingPageLayout" Value="~SiteCollection/_catalogs/masterpage/Custom Article Page.aspx, $Resources:cmscore,PageLayout_WelcomeLinks_Title;" />
</File>
<!-- removed -->
</Module>
</Modules>
</Project>
Never mind, I got it...eventually
Solution was to
Add a Feature to the site definition project with the following in its elements.xml file
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<ContentTypeBinding ContentTypeId="0x010100899F73B9F6814EA9AED9876985F28B39" ListUrl="Pages" />
</Elements>
Then add a feature dependency in the onet.xml file
<!-- Binds custom content types to Pages library.-->
<Feature ID="8290db1f-0a87-44f3-be22-28c61f9c8965">
</Feature>
and finally to add each page in a module at the end of the file (including the content type)
<File Url="at-a-glance.aspx" Type="GhostableInLibrary" Level="Draft" >
<Property Name="Title" Value="At a glance" />
<Property Name="ContentType" Value="Custom_ContentTypes_Publishing - CustomFive" />
<Property Name="PublishingPageLayout" Value="~SiteCollection/_catalogs/masterpage/Custom Article Page.aspx, $Resources:cmscore,PageLayout_WelcomeLinks_Title;" />
</File>